Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407

    Nome colonne in esportazione excel.

    Ciao a tutti.

    Per esportare in f.to Excel XLS dei dati contenuti in un db mysql tramite ASP utilizzo il classico:

    codice:
        FileName="Report.xls" 
        Response.Buffer = true
        Response.ContentType = "application/vnd.ms-excel" 
        Response.AddHeader "content-disposition", "inline; filename=" & FileName
    E poi con una query mi estraggo i dati che mi interessano.

    Il mio problema è che nella pagina ASP che esegue l'esportazione in excel devo inserire manualmente tutti i nomi della colonna che poi si popolano con i valori del db nelle righe del foglio excel.

    Esiste una maniera per far scrivere nelle intestazioni delle colonne il nome del campo corrispondente nel db mysql?

    Mi sono spiegato?
    Grazie

  2. #2
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    up

  3. #3
    non ho capito. fa' un esempio. posta un po' di codice.

  4. #4
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Grazie per l'attenzione.

    Allora questo è il codice ASP che esporta i dati in excel:

    codice:
        
        SQL = "SELECT * FROM "
        SQL = SQL & " tbl_1 "
        Set rs = cn.Execute(SQL)
    	
        FileName="Esportazione.xls" 
        Response.Buffer = true
        Response.ContentType = "application/vnd.ms-excel" 
        Response.AddHeader "content-disposition", "inline; filename=" & FileName 
    
        //INTESTAZIONI COLONNE
        Response.write "<table border=1>" &_
                     "<tr>" &_
                     "<th bgcolor='#FF9900'>Data</th>" &_
                     "<th bgcolor='#FF9900'>Ora</th>" &_
                     "<th bgcolor='#FF9900'>Zona</th>" &_
                     ....
                         "</tr>" &_
                     "<tr>" &_
                     "<td>"
    
        Response.write rs.GetString(,,"</td><td>","</td></tr><tr><td>","") 
        Response.write ("</td></tr></table></center>") 
    
    
        Set rs = Nothing
    
        cn.Close() 
        Set cn = Nothing
    Come puoi vedere le intestazioni delle colonne devo inserirle tutte a manetta (Data, Ora, Zona,... ).

    La domanda è se posso evitare questo inserimento a mano delle intestazioni delle colonne e prendere il nome della colonna direttamente dal nome colonna della tabella del db, in quanto è una tabella con circa 150 campi...

  5. #5
    rs(n).name ti dà il nome del campo

  6. #6
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Originariamente inviato da optime
    rs(n).name ti dà il nome del campo
    Ho capito, grazie... ma quindi dovrò scrivere ? :

    rs(0).name
    rs(1).name
    ...
    rs(150).name

  7. #7
    ubbi, e su, un ciclo for...next, no?

  8. #8
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Originariamente inviato da optime
    ubbi, e su, un ciclo for...next, no?
    Ok, provo così:

    codice:
        For i=0 to ....
            rs(i).name
        next
    Dopo il "to" cosa devo prevedere ?

  9. #9

  10. #10
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Grazie, ma:


    Microsoft VBScript runtime error '800a01c2'
    Wrong number of arguments or invalid property assignment: 'name'


    codice:
        For i=0 to rs.fields.count -1
            rs(i).name
        next

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.