none
Import de arquivo. RRS feed

  • Pergunta

  • Ola pessoal,

     

    Estou fazendo um script para fazer import de dados onde o arquivo é .txt que o usuário tem que indicar onde esta o arquivo, só consegui pegar o diretório mas não o caminho e o arquivo, para pegar o Diretório eu usei:

     

    Set objFolder = objShell.BrowseForFolder _
        (WINDOW_HANDLE, "Select a folder:", OPTIONS)

     

    e para informar o arquivo? Alguem pode me ajudar?

     

     

     

    quinta-feira, 5 de julho de 2007 16:14

Respostas

  • Saulo, para isso você precisará utilizar um HTA ao invés de um VBS, segue o código.

     

    Salve como .HTA

     

    Code Snippet

    <HTML>
    <HEAD>
    <TITLE></TITLE></HEAD>
    <BODY>

    <SCRIPT LANGUAGE="VBScript">
    Sub ButBrowse_onclick()
     Dim sFile
     sFile = Browse
     If (sFile <> "") Then
      MsgBox sFile
     End If
    End Sub

    Function Browse()
     Dim Q2, sRet, IE
     On Error Resume Next
     Q2 = chr(34)
     Set IE = CreateObject("InternetExplorer.Application")
     IE.visible = False
     IE.Navigate("about:blank")
     Do Until IE.ReadyState = 4
     Loop
     
     IE.Document.Write "<HTML><BODY><INPUT ID=" & _
     Q2 & "Fil" & Q2 & "Type=" & Q2 & "file" & Q2 & _
     "></BODY></HTML>"
     With IE.Document.all.Fil
      .focus
      .click
      Browse = .value
     End With

     IE.Quit
     Set IE = Nothing
    End Function

    </SCRIPT>

    <INPUT NAME="ButBrowse" TYPE="button" TITLE="Selecione um Arquivo"
    VALUE="Browse"></INPUT><BR>

    </BODY></HTML>

     

     

     

    Não esqueça de classificar o assunto.

    sexta-feira, 31 de agosto de 2007 18:22
  • Vc pode usar também o seguinte script..

     

    Code Snippet

     Set objDialog = CreateObject("UserAccounts.CommonDialog")

    'aki é definido o tipo do arquivo... na seguinte sintax: label | extenção| outro_label| outra_extenção

     objDialog.Filter = "All Files (*.*)|*.*"
     objDialog.InitialDir = "C:\"
     intResult = objDialog.ShowOpen

     if intResult<>0 then

      msgbox objDialog.FileName

    else

     msgbox "Nenhum arquivo selecionado."

    end if

     

     

     

     

    Vc pega o path do arquivo que o usuário escolheu com objDialog.FileName ...

    Mas esse script só pode ser utilizado em pcs XP, pra utilizar em versão anteriores, o HTa do Bruno é a melhor solução.

     

    =D

     

    terça-feira, 11 de setembro de 2007 20:40
    Moderador
  •  

    No prosbs...

     

    Não esqueça de classificar os posts, marcando-os com resposta....

    =D

    quarta-feira, 12 de setembro de 2007 18:25
    Moderador

Todas as Respostas

  • Saulo, para isso você precisará utilizar um HTA ao invés de um VBS, segue o código.

     

    Salve como .HTA

     

    Code Snippet

    <HTML>
    <HEAD>
    <TITLE></TITLE></HEAD>
    <BODY>

    <SCRIPT LANGUAGE="VBScript">
    Sub ButBrowse_onclick()
     Dim sFile
     sFile = Browse
     If (sFile <> "") Then
      MsgBox sFile
     End If
    End Sub

    Function Browse()
     Dim Q2, sRet, IE
     On Error Resume Next
     Q2 = chr(34)
     Set IE = CreateObject("InternetExplorer.Application")
     IE.visible = False
     IE.Navigate("about:blank")
     Do Until IE.ReadyState = 4
     Loop
     
     IE.Document.Write "<HTML><BODY><INPUT ID=" & _
     Q2 & "Fil" & Q2 & "Type=" & Q2 & "file" & Q2 & _
     "></BODY></HTML>"
     With IE.Document.all.Fil
      .focus
      .click
      Browse = .value
     End With

     IE.Quit
     Set IE = Nothing
    End Function

    </SCRIPT>

    <INPUT NAME="ButBrowse" TYPE="button" TITLE="Selecione um Arquivo"
    VALUE="Browse"></INPUT><BR>

    </BODY></HTML>

     

     

     

    Não esqueça de classificar o assunto.

    sexta-feira, 31 de agosto de 2007 18:22
  • Caro Bruno , muito obrigado, me ajudo muito ...

    terça-feira, 11 de setembro de 2007 19:23
  •  

    Que bom, apenas classifique a mensagem para fechar o assunto.
    terça-feira, 11 de setembro de 2007 20:23
  • Vc pode usar também o seguinte script..

     

    Code Snippet

     Set objDialog = CreateObject("UserAccounts.CommonDialog")

    'aki é definido o tipo do arquivo... na seguinte sintax: label | extenção| outro_label| outra_extenção

     objDialog.Filter = "All Files (*.*)|*.*"
     objDialog.InitialDir = "C:\"
     intResult = objDialog.ShowOpen

     if intResult<>0 then

      msgbox objDialog.FileName

    else

     msgbox "Nenhum arquivo selecionado."

    end if

     

     

     

     

    Vc pega o path do arquivo que o usuário escolheu com objDialog.FileName ...

    Mas esse script só pode ser utilizado em pcs XP, pra utilizar em versão anteriores, o HTa do Bruno é a melhor solução.

     

    =D

     

    terça-feira, 11 de setembro de 2007 20:40
    Moderador
  • Valeu Filipe muito obrigado o seu e o do Bruno funcionaram perfeitamente para o que eu estou fazendo ....

     

     

    abraços

    quarta-feira, 12 de setembro de 2007 17:25
  •  

    No prosbs...

     

    Não esqueça de classificar os posts, marcando-os com resposta....

    =D

    quarta-feira, 12 de setembro de 2007 18:25
    Moderador