Até onde ir com o Microsoft Office

Que o Microsoft Office é uma ferramenta extremamente poderosa ninguém discute. Mas a pergunta que não cala a partir do momento em que começamos a aprimorar os conhecimentos na ferramenta é até onde vale a pena continuar usando o Office, já que existem tantas outras ferramentas para os propósitos que queremos alcançar.

Eu diria que é uma questão de escolha. Foi quando programadores de linguagens chamadas “profissionais” me disseram que o Microsoft Office é cru e amador demais para atingir determinadas metas que tive contato com soluções geniais construídas nesta ferramenta, provindas de empresas especializadas no ramo.

Para demonstrar algumas que impressionaram muito, seja por contato direto ou indireto através de palestras e artigos, coloco aqui o link de duas empresas especializadas no ramo que possuem em seu portifólio soluções criadas com Microsoft Office para empresas de grande porte. Consultem as páginas de casos de sucesso de cada uma para terem acesso a um preview do que é possível construir com esta ferramenta:

Prime Solution – http://www.primesolution.com.br/
Mondial Informática – http://www.mondial.com.br/

É apenas uma idéia de até onde é possível ir com a ferramenta. A intenção é expandir horizontes a respeito do uso do Microsoft Office e o diferencial positivo no aspecto profissional que isto pode trazer para cada um, seja da área de tecnologia ou não. Mesmo sendo um profissional da área de tecnologia, conheço muitos colegas que estão longe de serem programadores e tiram de letra a construção de soluções com o Microsoft Office no dia a dia de seus trabalhos.

Um grande abraço

Tomás Vásquez

Contando um determinado caractere em uma String no VBA

Aproveitando a dica passada a um colega de um fórum, segue uma função para contar a quantidade de ocorrências de um carater dentro de uma String no VBA:

1
2
3
4
5
6
7
8
9
Public Function ContaCaracteresNaString(ByVal texto As String, ByVal caracter As String) As Long
     Dim x As Variant
     x = Split(texto, caracter)
     ContaCaracteresNaString = UBound(x)
End Function
 
Public Sub Teste()
     MsgBox ContaCaracteresNaString("janeiro|fevereiro|março|abril|", "|")
End Sub

Os dados são um exemplo para testar a função. É bom lembrar que o código utiliza a função Split, não disponível em algumas versões do VBA.

Para uso da função Split nesses casos, existe um exemplo no site da própria Microsoft cujo link será colocado em breve neste blog.

Bom proveito!

Tomás Vásquez

Construindo formulários Web sem programar

Em muitas situações no dia a dia ou na empresa é necessário coletar dados de clientes, funcionários, visitantes, enfim.

Atualmente a internet é um meio fácil de acesso para qualquer pessoa, principalmente em empresas. Não só nelas como para qualquer pessoa. A proliferação de Cyber-Cafés e Lan-Houses proporcionam a inclusão digital.

Bom, o foco é, quando você precisa publicar um questionário em qualquer situação, na empresa, no seu site, quem é que já não pensou em fazer isso on-line? Aposto que pelo menos 90% dos que lerem este post. O problema é que conhecimentos básicos de HTML ou de sites não são suficientes para promover tal façanha, Para isso é necessário conhecer alguma linguagem de programação Web como ASP, ASP.NET, PHP, JSP, entre outras, além dos percalços da hospedagem, servidor, enfim.

O lado bom é que existe um site de nome “formfacil”. Ele possibilita a criação de formulários Web para coletar dados. A partir de um cadastro, é possível criar campos de todo o tipo como texto simples, lista de valores, escolha múltipla, única, enfim, as opções mais tradicionais. É claro, depois de criado, é possível publicá-lo e as respostas submetidas a um email informado no cadastro.

É bem prático e fácil de usar. Atualmente está em verão alfa (ou seja, ainda falta a beta, homologação e só depois a versão final), portando contém alguns bugs. Porém o cadastro é gratuito. O link é:

http://www.formfacil.com

Vale a pena testar!

Bom proveito!

Tomás Vásquez

Usando a função ShellExecute no VBA

 

EXECUTE ISSO!

A maioria dos desenvolvedores VBA conhecem a função Shell, que permite executar aplicativos baseados em seu caminho completo, por exemplo:

1
Shell("C:\Aplicativo.exe")

Porém, esta rotina se aplica apenas a executáveis. Caso fosse necessário abrir determinado arquivo, por exemplo, um documento do Word, existem dois caminhos:

– Passar o caminho do documento como parâmetro para o aplicativo usando a própria função Shell, por exemplo:

1
Shell ("WINWORD" & " " & """C:\temp\documento.doc""")

– Usar a função ShellExecute.
A função ShellExecute é capaz de “executar” um determinado arquivo, abrindo o arquivo associado a este, parâmetro determinado pelo Windows. É útil quando sabemos apenas o caminho do arquivo, e não de seu aplicativo, até porque isso pode mudar de computador para computador. Um exemplo do código pode ser visto abaixo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Const SW_SHOW = 1
Const SW_SHOWMAXIMIZED = 3
Public Declare Function ShellExecute Lib "Shell32.dll" Alias "ShellExecuteA" _
                      (ByVal hwnd As Long, _
                      ByVal lpOperation As String, _
                      ByVal lpFile As String, _
                      ByVal lpParameters As String, _
                      ByVal lpDirectory As String, _
                      ByVal nShowCmd As Long) As Long
Sub AbrirArquivo()
    On Error Resume Next
    Call ShellExecute(0, "open", "caminho do arquivo", "argumentos", _
                          "pasta onde está localizado o arquivo", _
                          SW_SHOWMAXIMIZED)
End Sub

As constantes declaradas são apenas para auxiliar a chamada da função. Perceba que é necessário apenas saber o caminho do arquivo. Os parâmetro “argumentos” pode ser vazio caso não seja necessário.

É mais uma alternativa para facilitar a manipulação de arquivos sem fazer referências diretas em nosso aplicativo.

Bom proveito!

Tecnologia e Programação