domingo, 21 de agosto de 2016

Site muito bom sobre o Excel

http://guiadoexcel.com.br/

;-)

Alterando o acesso do help do Office para offline.

Este é um detalhe que dá a entender que a Microsoft não quer que você altere e sempre direcione o help para o site deles.
O problema é que nem sempre estamos online e nestas situações o help demora para responder e avisar que não foi possível efetuar a conexão com a internet.
Eu prefiro sempre ter o help offline, mais rápido e prático.
Na figura abaixo onde você pode mudar para offline.

;-)


Recuperando itens apagados no Outlook 2010

É comum apagarmos algum e-mail por engano.
Nas versões 2010 e posteriores, o Outlook permite que se recupere esses itens mesmo que tenham sido apagados da caixa "Excluídos".
Na imagem abaixo, mostro o comando para recuperar.
Detalhe importante é que somente os itens mais recentes (geralmente um ou dois dias) podem ser recuperados.
Não é muita coisa, mas muitas vezes, evita maiores dores de cabeça.

;-)


quinta-feira, 23 de junho de 2016

Cuidado com SELECT TOP n no Access

O Access tem algumas características estranhas e uma delas me chamou a atenção:
Se o SELECT TOP n registros apresentar valores duplicados, todos serão exibidos no resultado, o que em algumas situações pode resultar em problemas no banco de dados.
Nas figuras abaixo, exemplifico o caso.
Interessante que, a mesma instrução no SQL Server 2008 R2 (e acredito que em qualquer versão do SQL Server), retorna apenas 1 registro, como era de se esperar.
Na sequencia, parte do help do Access 2007 comentando esse tipo de situação.

;-)




Retorna um determinado número de registros que se encontrem na parte superior ou na parte inferior de um intervalo especificado pela cláusula ORDER BY. Suponha que você queira os nomes dos primeiros 25 estudantes da turma de 1994:


SELECT TOP 25
FirstName, LastName
FROM Students
WHERE GraduationYear = 2003
ORDER BY GradePointAverage DESC;


Se você não incluir a cláusula ORDER BY, a consulta retornará um conjunto arbitrário de 25 registros da tabela Students que satisfaça a cláusula WHERE.
O predicado TOP não opta por valores iguais.

No exemplo anterior, se as médias de pontuação de grau 25 e 26 forem as mesmas, a consulta retornará 26 registros.


sábado, 18 de junho de 2016

Criar um banco de dados pelo VBA

As vezes é necessário criar um banco de dados durante a execução de um programa.
Apliquei esta solução quando enviava o mesmo banco de dados para clientes diferentes, porém cada um com tabelas específicas.
Não esquecer de marcar a referência no VBA conforme a figura mais abaixo.

;-)


Private Sub CriarBancoDeDados()
 
    Dim objCatalog As ADOX.Catalog
 
    Set objCatalog = New ADOX.Catalog
 
    objCatalog.Create "provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Teste.accdb"

    Set objCatalog = Nothing
 
End Sub




quarta-feira, 15 de junho de 2016

Utiizando funções do Excel em outros aplicativos Office

Um recurso que facilita muito a vida de quem programa em VBA no Microsoft Office é a possibilidade de utilizar recursos de um aplicativo em outro.
Exemplificando, utilizar as funções do Excel no Word através do VBA, veja nas figuras mais abaixo.
Não esquecer de marcar a referência do Excel na versão do Office instalado.

;-)




domingo, 5 de junho de 2016

Conexão ADO em banco de dados Access 2010 com senha

Outro dia precisei fazer uma conexão via ADO num banco de dados criado no Access 2010 com senha.
Utilizei a string de conexão abaixo, mas que sempre informava "Formato de banco de dados desconhecido":

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Banco de Dados1.accdb;Jet OLEDB:Database Password="MinhaSenha"

Em pesquisa na internet, descobri que o problema é na forma como a senha é criptografada no banco de dados, bastando portanto, apenas alterar para o formato antigo, vide imagem.

;-)




sábado, 4 de junho de 2016

Listar tabelas do Access via VBA

Marca a referência:
Microsoft ADO Ext.  2.8 for DDL and Security


Option Compare Database
Option Explicit

Private Sub ListarTabelas()

    Dim cnn As New ADODB.Connection

    Dim catalogo As New ADOX.Catalog
    Dim tabela As New ADOX.Table

    Set cnn = New ADODB.Connection
    cnn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\northiwnd.mdb"
 
    Set catalogo.ActiveConnection = cnn
 
    For Each tabela In catalogo.Tables
        Debug.Print tbl.Name
    Next


End Sub

domingo, 20 de março de 2016

Powerpoint VBA

Uso do VBA no PowerPoint é raro, lembro de ter visto uma única vez, um colega de trabalho utilizar.
Eu mesmo utilizei somente para uma demonstração, depois nunca mais.
Sinceramente não vejo muita utilidade, mas é bom saber que existem publicações sobre o assunto.

Powerfull Powerpoint For Educators.

;-)


quarta-feira, 10 de fevereiro de 2016

Operador LIKE no VBA

Interessante como alguns recursos do VBA quase não são utilizados, porém são extremamente úteis.
É o caso do LIKE que costumeiramente é utilizado em instruções SQL.
Eu não sabia que existia no VBA e descobri por acaso olhando o help.
Confesso que já criei diversas funções para contornar o uso do LIKE e teria economizado tempo se soubesse que a instrução existia.
Abaixo os exemplos do próprio help do VBA.

;-)

Exemplo do operador Like

Este exemplo usa o operador Like para comparar uma seqüência de caracteres com um padrão.
Dim MyCheck
MyCheck = "aBBBa" Like "a*a"    ' Retorna True.
MyCheck = "F" Like "[A-Z]"    ' Retorna True.
MyCheck = "F" Like "[!A-Z]"    ' Retorna False.
MyCheck = "a2a" Like "a#a"    ' Retorna True.
MyCheck = "aM5b" Like "a[L-P]#[!c-e]"    ' Retorna True.
MyCheck = "BAT123khg" Like "B?T*"    ' Retorna True.
MyCheck = "CAT123khg" Like "B?T*"    ' Retorna False.

Pesquisar este blog

Arquivo do blog

Quem sou eu

Minha foto
Administrador de Empresas/Técnico em Processamento de Dados. Microsoft Office User Specialist - Excel Proficient. Pós-graduado em Business Intelligence.