Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Commom Dialog - Múltiplos arquivos


Danleonhart

Pergunta

Pessoal...

Alguém sabe um script para se carregar em uma ListBox vários arquivos utilizando o Commom Dialog ?

Assim... o usuário escolhe se quer carregar apenas um ou vários... tentei este script mas só carrega vários... e se configuro o script para carregar apenas um arquivo, o nome aparece duplicado no ListBox:

Sub MultiSel()
On Error GoTo TErro
Dim File_Name() As String, I As Integer
'Must set these flags in order to allow
'multiple selection
Dialog.Flags = cdlOFNExplorer Or cdlOFNAllowMultiselect
Dialog.ShowOpen
File_Name() = Split(Dialog.FileName, vbNullChar)

For I = LBound(File_Name) + 1 To UBound(File_Name)      '<= Aqui eu retiro o "+ 1" para carregar um só arquivo, mas duplica...
    List1.AddItem File_Name(0) & File_Name(I)
Next

 Exit Sub

TErro:
If Err.Number = 20476 Then
 MsgBox "Número excessivo de arquivos selecionados...", vbCritical, App.Title
 MsgBox "Ação cancelada para evitar sobrecarga no sistema.", vbExclamation, App.Title
End If
End Sub

Editado por Danleonhart
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

NOOOSSSAAA !

O fórum tá paradão... :blink:

Bem, conseguí... fica o exemplo:

Sub Procurar_Arquivos()
Dim Arquivos() As String, I As Integer

CD.DialogTitle = "Informe o caminho:"
CD.InitDir = Environ("HOMEDRIVE")
CD.Filter = "Tipos (*.dll), (*.ocx) e (*.tlb)|*.dll; *.ocx;*.tlb|Todos " & "Arquivos. (*.*)|*.*"
CD.FilterIndex = 1
CD.MaxFileSize = &H7FFF ' 32KB buffer

 ' Commom Dialog configurado para selecionar mais de um arquivo:

CD.Flags = cdlOFNHideReadOnly Or cdlOFNPathMustExist Or cdlOFNLongNames Or cdlOFNAllowMultiselect Or cdlOFNExplorer
CD.ShowOpen

If IsEmpty(CD.FileName) = True Then
Exit Sub
Else
If CD.FileName <> "" Then
If InStr(CD.FileName, Chr(0)) Then
'Selecionado vários arquivos:
Arquivos = Split(CD.FileName, Chr(0))
For I = 1 To UBound(Arquivos)
Lst1.AddItem Arquivos(0) & "\" & Arquivos(I)
Next
CD.FileName = Empty
Else
'Selecionado um único arquivo:
Lst1.AddItem CD.FileName
End If
End If
End If
CD.FileName = Empty
End Sub

Uso o exemplo acima para carregar varios arquivos (bibliotecas) em uma ListBox... :D

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...