19 de ago. de 2015

Forçar exibição de Date Picker no MS Access 2007, 2010 e 2013 quando o campo tem máscara de entrada


16 de ago. de 2015

Formatar código-fonte para inserir em blog

Ferramenta para formatar código-fonte para ser incluído em postagem de blog.

hilite.me (tem opção de esoclher a linguagem de programação)
Format My Source Code

11 de ago. de 2015

Lista os arquivos de determinado diretório

'Lista os arquivos de determinado diretório

'http://www.tomasvasquez.com.br/blog/microsoft-office/vba-listar-arquivos-de-um-diretorio

Public Function ListaArquivos(ByVal Caminho As String) As String()

Dim FSO As New FileSystemObject

Dim arquivos() As String

Dim Pasta As Folder

Dim Arquivo As File

Dim Indice As Long


ReDim arquivos(0) As String


If FSO.FolderExists(Caminho) Then

    Set Pasta = FSO.GetFolder(Caminho)

    For Each Arquivo In Pasta.Files

        Indice = IIf(arquivos(0) = "", 0, Indice + 1)

        ReDim Preserve arquivos(Indice) As String

        arquivos(Indice) = Arquivo.Name

    Next

End If


ListaArquivos = arquivos

Set FSO = Nothing

Set Pasta = Nothing

Set Arquivo = Nothing

End Function

Para testar:

Private Sub btnProcurar_Click()

'testa listagem dos arquivos

Dim arquivos() As String

Dim lCtr As Long

arquivos = Utilitarios.ListaArquivos(Utilitarios.AbrirSeletorDiretorio)


For lCtr = 0 To UBound(arquivos)

    MsgBox arquivos(lCtr)

Next

End Sub
Importante: Faça referência à biblioteca Micrsoft Scripting Runtime para ter acesso aos objetos da File System Object (FSO), necessários para execução do exemplo.

Abre o diálogo de seleção de pastas e retorna o caminho selecionado

'Abre o diálogo de seleção de pastas e retorna o caminho selecionado
'http://fcvidoto.com.br/selecionando-pastas-janela-de-dialogo/
Public Function AbrirSeletorDiretorio() As String

Dim Dialog As FileDialog
Set Dialog = Access.Application.FileDialog(msoFileDialogFolderPicker)

With Dialog
    .Title = "Selecione o diretório"
    If .Show = True Then
        DoEvents
        AbrirSeletorDiretorio = .SelectedItems(1)
    Else
        AbrirSeletorDiretorio = ""
    End If
    
End With

Set Dialog = Nothing

End Function

5 de ago. de 2015

Reduzindo o tamanho de arquivos PDF pela linha de comando

Muitas vezes, precisamos reduzir o tamanho de arquivos PDF, para enviar por email, colocar em pendrives, etc.
Para fazer isso, basta valer-se do Ghostscript, conforme mostrado a seguir:
gs -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=opcao_de_compressao -sOutputFile=arquivo_reduzido.pdfarquivo_original.pdf
Explicação:
  1. Substitua opcao_de_compressao por um dos seguintes parâmetros (Atenção para a barra antes do parâmetro!!!):
    • /screen – possui a menor resolução e, consequentemente, o menor tamanho de arquivo. Ideal para visualização em tela (como o próprio nome já diz)
    • /ebook – é um meio termo entre resoloução e tamanho de arquivo. Deve ser tentado, se a impressão com o /screen ficar ruim.
    • /printer – próprio para impressão, mas o tamanho do arquivo resultante é maior.
    • /prepress – impressão em alta qualidade, mas o tamanho do arquivo  final fica muito grande.
Um exemplo:
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/printer -dNOPAUSE -dQUIET -dBATCH -sOutputFile=manual_para_impressao.pdf manual_original.pdf