Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Importare dati da excel

    Leggendo il forum ho trovato questo esempio per importare dati da excel:
    codice:
    <%@LANGUAGE="VBSCRIPT"%>
    <%
    SQL="SELECT * FROM [Results$]"
    strProvider="DRIVER=Microsoft Excel Driver (*.xls); DBQ=" & Server.MapPath("listino.xls")
    set rs = Server.CreateObject("ADODB.recordset")
    
    rs.Open SQL, strProvider
    Do while not rs.eof
    
    response.write("descrizione") & "
    "
    
    Dim ConnDown
    Set ConnDown = Server.CreateObject("ADODB.Connection")
    ConnDown.Open "driver={Microsoft Access Driver (*.mdb)}; dbq="& server.MapPath(path&"listino.mdb")
    Dim SQL1,RECDown
    
    SQL1 = "INSERT into listino (descrizione) VALUES ('"&descrizione&"')"
    set RECDown = connDown.execute(SQL1)
    
    rs.MoveNext
    loop
    
    rs.close
    set rs=nothing
    
    ConnDown.Close
    set ConnDown=nothing
    %>
    L'ho provato ma mi viene restituito il seguente errore:

    Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
    [Microsoft][Driver ODBC Excel] "Results$" non è un nome valido. Verificare che non includa caratteri o punteggiatura non validi e che non sia troppo lungo.


    Con cosa devo sostituire quel Results$?

    Grazie

  2. #2
    codice:
    SQL="SELECT * FROM [Results$]"
    [Results$] è il nome del tuo foglio excel... Foglio1, Dati....

  3. #3
    Non funzia ugualmente...

  4. #4
    codice:
    <%@LANGUAGE="VBSCRIPT"%>
    <%
    SQL="SELECT * FROM [Foglio3$]"
    strProvider="DRIVER=Microsoft Excel Driver (*.xls); DBQ=" & Server.MapPath("listino.xls")
    set rs = Server.CreateObject("ADODB.recordset")
    
    rs.Open SQL, strProvider
    Do while not rs.eof
    
    'response.write("descrizione") & "
    "
    
    Set ConnDown = Server.CreateObject("ADODB.Connection")
    ConnDown.Open "driver={Microsoft Access Driver (*.mdb)}; dbq="& server.MapPath(path&"listino.mdb")
    
    SQL1 = "INSERT into tabella (descrizione) VALUES ("&???&")"
    set rs1 = connDown.execute(SQL1)
    
    rs.MoveNext
    loop
    
    rs.close
    set rs=nothing
    
    ConnDown.Close
    set ConnDown=nothing
    %>
    Ora l'errore è cambiato ed è nella insert.
    Non capisco cosa devo inserire nella tabella di access, credevo o il nome della colonna (che io ho chiamato descrizione) o della cella (A1,A2 generati dinamicamente), ma in entrambi i casi cmq non funziona...

    Un aiuto?

  5. #5
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    SQL1 = "INSERT into tabella (descrizione) VALUES ("&rs("descrizione")&")"
    Roby

  6. #6
    Ci avevo anche provato ma:

    ADODB.Recordset (0x800A0CC1)
    Impossibile trovare l'oggetto nell'insieme corrispondente al nome o al numero richiesto.
    /percorso, line 13

    Ma come assegno il nome alla colonna excel?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.