Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    339

    Esportare Pagina in XLS

    Ciao a tutti , nella mia pagina ASPX ho creato un table dinamica , con N colonne N Righe
    dentro nelle quali ci sono dei valori.

    Ora vorrei esportare questa tabella creata dinamicamente in un foglio XLS.
    Come posso farE?
    Ci sono 10 categorie di persone al mondo: quelle che capiscono
    il sistema binario e quelle che non lo capiscono.

  2. #2
    Utente di HTML.it L'avatar di lila89
    Registrato dal
    Oct 2007
    Messaggi
    211
    ciao,

    ti consiglio di usare gli oggetti di infragistics , in particolare UltraWebGridExcelExporter e Ultrawebgrid se vuoi sostituire la tabella dinamica che hai creato;


    la sintassi per esportare è:

    this.UltraWebGridExcelExporter1.Export(this.UltraW ebGrid1);


    Più in dettaglio:

    nella pagina .aspx basta che inserisci i due oggetti:
    codice:
    <igtblexp:UltraWebGridExcelExporter ID="UltraWebGridExcelExporter1" runat="server" OnBeginExport="UltraWebGridExcelExporter1_BeginExport" >
            </igtblexp:UltraWebGridExcelExporter>
    
    <igtbl:UltraWebGrid ID="UltraWebGrid1" runat="server" DisplayLayout-AllowRowNumberingDefault="Continuous" Height="313px" Width="669px">
    </igtbl:UltraWebGrid>
    che ovviamente poi formatterai come meglio credi (paginazione, colore, grandezza...etc);
    in .aspx.cs invece devi usare il seguente codice (questo è in c# ma con un buon traduttore lo puoi trasformare facilemnte in VB)

    Riempire UltraWebGrid (che sarebbe la tua tabella) nel pageload:

    codice:
        {
            DataSet DSet = new DataSet();
            string Cnnstr = System.Configuration.ConfigurationSettings.AppSettings["CN1"].ToString();
            bool ret = false
    ;
    
            ret = clsFunctions.LoadDataSetFromSqlStatement(Cnnstr, "SELECT * FROM utente ", "PROVA", ref DSet, true);
    
            if (ret == true)
            {
                if (DSet.Tables["PROVA"].Rows.Count > 0)
                {
                    DSet.Tables["PROVA"].Rows[0]["cognome"].ToString();
                    DSet.Tables["PROVA"].Rows[0]["nome"].ToString();
                    DSet.Tables["PROVA"].Rows[0]["username"].ToString();
                    DSet.Tables["PROVA"].Rows[0]["password"].ToString();
                    DSet.Tables["PROVA"].Rows[0]["email"].ToString();
    
    
                    UltraWebGrid1.DataSource = DSet;
                    UltraWebGrid1.DataBind();
    
                }
    
            }
            else
            { Response.Write("Errore durante la connessione"); }
    PER ESPORTARE invece crei un button e nell'evento ONCLICK inserisci:

    codice:
     UltraWebGrid1.DisplayLayout.Pager.AllowPaging = false;
            UltraWebGrid1.DataBind();
            this.UltraWebGridExcelExporter1.Export(this.UltraWebGrid1);
    se non usi ultrawebgrid basta che inserisci l' ID della grid che usi al posto di "ultrawebgrid1", e ricordati che il codice
    codice:
     UltraWebGrid1.DisplayLayout.Pager.AllowPaging = false;
            UltraWebGrid1.DataBind();
    serve solo se hai messo impostazioni di paginazione, se hai impostato la visualizzazionie su più pagine prima di esportare devi ricostruire la grid senza paginazione altrimenti esporterà solo i record della pagina in cui ti trovi.

    Spero di esserti stata di aiuto, se hai qlk domanda chiedi pure... ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    339
    Non posso cambiare la asp table che creo dinamicamente ora.
    Posso usare lo stesso questo controllo anche con la mia table?
    Ci sono 10 categorie di persone al mondo: quelle che capiscono
    il sistema binario e quelle che non lo capiscono.

  4. #4
    Utente di HTML.it L'avatar di lila89
    Registrato dal
    Oct 2007
    Messaggi
    211
    non l'ho mai provato con la talbe.. ma penso sia la medesima cosa, al posto di UltraWebGrid1 potresti provare a mettere il nome della tua table, dovrebbe funzionare, xkè per esportare va alla ricerca di colonne e righe..

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    339
    Non ho ben capito scusa.

    Devo importare qualche classe?
    Mi spieghi meglio sta cosa non lo capito..scusa tanto
    Ci sono 10 categorie di persone al mondo: quelle che capiscono
    il sistema binario e quelle che non lo capiscono.

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    339
    ho trovato questo esempio
    http://community.visual-basic.it/tdj.../20/19983.aspx
    però nn lo bene capito scusate la mia ignoranza.
    Ci sono 10 categorie di persone al mondo: quelle che capiscono
    il sistema binario e quelle che non lo capiscono.

  7. #7
    Utente di HTML.it L'avatar di lila89
    Registrato dal
    Oct 2007
    Messaggi
    211
    prima di tutto devi installare infragistics e importare gli strumenti in visual studio... praticamente ti fa vedere l'esposrtatore come una label da inserire...

    poi devi associare nel pageload la tua tabella ad una fonte dati... per cui..

    dttable.datasource=Dset;

    (dove Dset è il dataset, o dove salvi i dati qnd li estrai durante la connessione e l'esecuzione del select sql)...e costruirla

    dttable.databind();

    dopo, visto che hai inserito l'esportatore nella pagina html (dopo avrlo importato nel programma..
    attraverso:

    <igtblexp:UltraWebGridExcelExporter ID="UltraWebGridExcelExporter1" runat="server" onBeginExport="UltraWebGridExcelExporter1_BeginExp ort" >
    </igtblexp:UltraWebGridExcelExporter>

    crei un button... e nel suo evento OnClick() basta che inserisci:

    this.UltraWebGridExcelExporter1.Export(this.dttabl e);

    ossia gli passi la tabella...con la webgrid funziona..e visto che non c'è molta differenza logica rispetto alla tabella normale dovrebbe funzionare...(ps qst è senza il paging se lo metti devi aggiungere del codice..)

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.