Pergunta

Usando VB6

Agora estou usando um botão de navegação no meu software para selecionar o arquivo de texto e ele é convertido em MDB (Access). Não quero selecionar o arquivo de texto.

Depois de instalar meu software em qualquer sistema, o arquivo de texto deve selecionar automaticamente em um caminho especificado. Em seguida, o arquivo de texto se converte automaticamente em MDB. Uma vez convertido em MDB, então

Código VB para converter texto em MDB.

Dim db As Database, tbl As TableDef
Set db = DBEngine.OpenDatabase(App.Path & "\History.mdb")
Set tbl = db.CreateTableDef("Temp")
tbl.Connect = "Text;database=" & App.Path & "/ConvTemp/"
tbl.SourceTableName = strOutput & ".txt"
db.TableDefs.Append tbl
db.Execute "Select Temp.ID, Temp.IDTerminal, Temp.Reader, Temp.Date, Temp.Time, Temp.Cardnumber into  " & strOutput & "  from Temp"
db.TableDefs.Delete ("Temp")
db.Close
MsgBox strOutput
sql2 = "insert into events select * from " & strOutput & ""
If rs.State = 1 Then rs.Close
rs.Open sql2, Cn, adOpenStatic, adLockOptimistic
Set tbl = Nothing
Set db = Nothing

O código acima está funcionando para o texto para a conversão do MDB. Mas preciso converter o arquivo de texto automaticamente sem usar o botão de navegação.

Por exemplo

O nome do MDB é - history.mdb e o nome da tabela é - event.mdb

Eu defino um caminho como este "c: newFolder" no meu software

Na pasta acima, o arquivo de texto aparecerá com nomes diferentes. Pode ser o arquivo de texto por dia aparecerá de 10 a 20 arquivos de texto com novos nomes diferentes. Também não posso dar o nome do arquivo de texto. Eu tenho que dar apenas a extensão como (*.txt).

Depois de instalar meu software, o software deve selecionar o arquivo de texto de C: newFolder, ele se converte automaticamente em MDB, depois de converter o arquivo de texto O arquivo de texto deve excluir automaticamente.

Saída esperada

Once I installed my software in any system, the software should select the text file from the specified folder, then the text file convert into mdb. Once converted, the text files automatically delete from the specified path.

Para converter texto em mdb estou tendo o código, para selecionar automaticamente o arquivo de texto, preciso de um código de exemplo ou ideia

Sou novo no VB6, alguém pode dar uma idéia de como fazer isso. Ou qualquer publicação pode postar um código de exemplo para seleção automaticamente de arquivo de texto.

Por favor.

Foi útil?

Solução

O código básico procuraria algo nas linhas disso:

      Dim filename As String
      filename = Dir$("C:\NewFolder\*.txt", vbDirectory)
      Do While filename <> ""

        Debug.Print filename

        'This line will delete the file as you asked
        'but to make sure if the file has been converted to mdb
        'is solely your code's responsibility

        Kill "C:\NewFolder\" & filename

        filename = Dir$
      Loop

O código acima pressupõe que, no seu C: newFolder, você terá apenas arquivos *.txt e nenhum outro arquivo ou pastas.

Hth

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top