API para Selecionar Pastas
Especialista em Excel
API Seleção Pasta
Baixe agora — o link vai direto para o seu e-mail.
- Download 100% gratuito
- Arquivo pronto para usar no Excel
- Enviamos o link no seu e-mail
Objetivo: Demonstrar a utilização da API de seleção de pastas do Windows com VBA.
Assim como vimos em outro post sobre API's, o Windows permite que nós utilizemos diversas de suas funções por meio de programação, que de outra forma seria muito difícil desenvolvermos.
Neste código VBA você pode chamar a tela de seleção de pastas do Windows e após selecioná-la retornar este caminho, que pode ser utilizada para definir por exemplo o local aonde serão gerados arquivos a partir da sua planilha.
Para incluir uma procedimentos ou funções globais faça conforme o artigo http://guiadoexcel.com.br/criando-funcoes-proprias-globais.
'Colocar esta parte do código no início do módulo
Public Declare Function SHBrowseForFolder Lib "shell32.dll" Alias _
"SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) As Long
Public Declare Function SHGetPathFromIDList Lib "shell32.dll" Alias _
"SHGetPathFromIDListA" (ByVal pidl As Long, ByVal pszPath As String) _
As Long
Public Type BROWSEINFO
hOwner As Long
pidlRoot As Long
pszDisplayName As String
lpszTitle As String
ulFlags As Long
lpfn As Long
lParam As Long
iImage As Long
End Type
'Função que faz chamada da API
Public Function gfSelecionarPasta(ByVal vFolder As String, Optional Title As String, Optional hWnd) As String
Dim bi As BROWSEINFO
Dim pidl As Long
Dim folder As String
folder = String$(255, Chr$(0))
With bi
If IsNumeric(hWnd) Then .hOwner = hWnd
.pidlRoot = 0
If Title <> "" Then
.lpszTitle = Title & Chr$(0)
Else
.lpszTitle = "Select a Folder" & Chr$(0)
End If
End With
pidl = SHBrowseForFolder(bi)
If SHGetPathFromIDList(ByVal pidl, ByVal folder) Then
folder = Left(folder, InStr(folder, Chr$(0)) - 1)
Else
folder = ""
End If
If Right(folder, 1) <> "\" And Len(folder) > 0 Then folder = folder & "\"
gfSelecionarPasta = folder
End Function
'Utilização da função para mostrar em um messageBox e colocar em uma célula o caminho da pasta
Public Sub gsPasta()
Dim lPasta As String
lPasta = gfSelecionarPasta("C:", "Selecione o local aonde será gravado o arquivo:")
MsgBox "O arquivo será gravado em: " & lPasta, vbExclamation, "Local"
Cells(1, 1).Value = lPasta
End Sub
Abraço
Marcos Rieper
Planilha de Controle Financeiro no Excel
Tenha um controle bonito e completo do seu financeiro.
- Categorias e subcategorias já configuradas
- Planilhas separadas por tabela (configuração, lançamentos, resumo)
- Personalize com suas próprias categorias e ícones
API Seleção Pasta
Baixe agora — o link vai direto para o seu e-mail.
- Download 100% gratuito
- Arquivo pronto para usar no Excel
- Enviamos o link no seu e-mail
Este conteúdo foi útil?
Continue lendo

Seleção de arquivos, pastas e salvar arquivos com o FileDialog VBA
Seleção de arquivos, pastas e salvar arquivos com o FileDialog VBA. Planilha para uso do FileDialog no Excel VBA. BAIXE GRÁTIS

Índice Big Mac Planilha Excel - Alterar dados ao selecionar gráfico
Neste artigo você aprenderá sobre o índice Big Mac e uma planilha Excel com dashboard interativo de indicadores ao passar o mouse pelas suas barras.

Somase com Desloc e marcação das células selecionadas
Demonstrar como fazer no Excel a seleção de colunas diferentes em somas condicionais e marcar as células que foram selecionadas para a soma.Somase e Desloc.


