Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rmmtins

Importar CSV

Recommended Posts

Estou utilizando o seguinte codigo para abrir um arquivo csv
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open "Driver={Microsoft Text Driver (*.txt; *.csv)};" & _
"Dbq="& Server.MapPath("/PathArquivo") &";" & _
"Extensions=asc,csv,tab,txt;" & _
"Persist Security Info=False;"
Set RS_CVS = Server.CreateObject("ADODB.Recordset")
RS_CVS.Open "Select * From "&NomeArquivo&"", objConn
O arquivo CSV está no seguinte formato
Data Operacao;Data Movimento;Placa;Emissor;Tag;Data Entrada;Pista Entrada;Data Saida;Pista Saida;Valor;Sequencial
03/03/15 00:00;03/03/15 00:00;KYX0179;290;6229856;03/03/15 07:04;1;03/03/15 08:56;56;0;2210
03/03/15 00:00;03/03/15 00:00;AUN1551;290;1931969;03/03/15 07:13;1;03/03/15 08:51;55;12;2210
03/03/15 00:00;03/03/15 00:00;LSX2659;290;6459369;03/03/15 07:31;1;03/03/15 08:43;53;9;2210
03/03/15 00:00;03/03/15 00:00;LQT2000;290;173730;03/03/15 07:40;1;03/03/15 07:59;53;0;2210
03/03/15 00:00;03/03/15 00:00;LTT1083;290;1370981;03/03/15 07:54;1;03/03/15 18:04;53;0;2210
03/03/15 00:00;03/03/15 00:00;FGH8015;290;7462517;03/03/15 07:56;1;03/03/15 11:39;51;0;2210
03/03/15 00:00;03/03/15 00:00;KWF5977;290;5721851;03/03/15 19:39;1;03/03/15 21:16;55;12;2210
Gostaria de pegar os valores de apenas alguns campos neste arquivo.
Ex:
Campos: Placa, Data Movimento, Emissor
Como fazer?
Desde já agradeço

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha este exemplo:

<%
Set csv = Server.CreateObject("ADODB.Connection")
csv.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ 
       "Data Source=" & Server.MapPath("./uploaddir/") & ";" & _ 
       "Extended Properties=""text;HDR=Yes;FMT=Delimited"""

Set acc = Server.CreateObject("ADODB.Connection")
acc.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
           "Data Source=" & Server.MapPath("./data/dbname.mdb") & ";"
Set accRS = Server.CreateObject("ADODB.RecordSet")
accRS.Open "tbl_clients", acc, 3, 3 ' adOpenStatic, adLockOptimistic

Set csvRS = csv.Execute("SELECT * FROM nameOfFile.csv")
Do Until csvRS.EOF
    accRS.AddNew
    accRS("custname") = csvRS("Name")
    accRS("custemail") = csvRS("Email")
    accRS("custmemtype") = csvRS("MembershipType")
    accRS("custmemgroup") = csvRS("Interest")
    accRS.Update
    csvRS.MoveNext
Loop
accRS.Close
csvRS.Close
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pela ajuda, Quando tento por exemplo buscar o csvRS("Placa") aparece o seguinte erro,

 

ADODB.Recordset error '800a0cc1' Item cannot be found in the collection corresponding to the requested name or ordinal.

Compartilhar este post


Link para o post
Compartilhar em outros sites

no caso csvRS é a variável referente ao retorno da sua sql

 

Set csvRS = csv.Execute("SELECT * FROM nameOfFile.csv")

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.