Esportare solo alcuni dati di una datagridview in un file Excel

di il
4 risposte

Esportare solo alcuni dati di una datagridview in un file Excel

Salve,
ho una datagridview con dei dati e ho creato una routine per esportazione in un file excel.
Tutto funziona.

Ho aggiunto alcune checkbox che mi permettono di scegliere quali colonne visualizzare e nascondere, ma quando faccio l'esportazione vengono inviati tutti i dati della dgv mentre io vorrei esportare solo le colonne che ho scelto di vedere a video.

Nell'occasione vorrei anche sapere, per un'altra funzione, come esportare solo le righe eventualmente selezionate anziché tutte.

Grazie mille.

4 Risposte

  • Re: Esportare solo alcuni dati di una datagridview in un file Excel

    Non si se hai scritto tu il codice per l'esportazione. Comunque ti basta modificarlo controllando lo stato della colonna che stai stampando prima di inviarlo.

    Mostra il codice e indica tu il punto in cui fare questo controllo.
  • Re: Esportare solo alcuni dati di una datagridview in un file Excel

    Il codice è questo:
    
    
    
     Dim app As Microsoft.Office.Interop.Excel._Application = New Microsoft.Office.Interop.Excel.Application()
    
                ' creo una nuova Cartella di lavoro in Excel
    
               Dim workbook As Microsoft.Office.Interop.Excel._Workbook = app.Workbooks.Add()
    
    
    
                ' creo un nuovo foglio nella Cartella di lavoro
    
                Dim worksheet As Microsoft.Office.Interop.Excel._Worksheet = Nothing
    
    
    
                ' ottengo i riferimenti del primo foglio. 
    
              
    
                worksheet = workbook.Sheets("Foglio1")
    
      ' archivio i suoi riferimenti nel foglio
    
                worksheet = workbook.ActiveSheet
    
    
    
    
                ' archiviare la parte Intestazione
    
                For i As Integer = 1 To dgvTraffico.Columns.Count
    
                    worksheet.Cells(1, i) = dgvTraffico.Columns(i - 1).HeaderText
    
                Next
    
    
                ' archivio il valore di ogni riga e colonna nel foglio
    
                For i As Integer = 0 To dgvTraffico.Rows.Count - 1
    
                    For j As Integer = 0 To dgvTraffico.Columns.Count - 1
    
                        worksheet.Cells(i + 2, j + 1).NumberFormat = "@"
    
                        worksheet.Cells(i + 2, j + 1) = dgvTraffico.Rows(i).Cells(j).Value.ToString()
    
                    Next
                Next
    
            ' rendo visibile il foglio alla fine dell'elaborazione
    
                app.Visible = True
    
  • Re: Esportare solo alcuni dati di una datagridview in un file Excel

    Lo hai scritto tu?

    Dove usi la dgvTraffico, fai i controlli per capire se i dati sono visibili prima di assegnarli alle celle di Excel
  • Re: Esportare solo alcuni dati di una datagridview in un file Excel

    Ok ora provo grazie
Devi accedere o registrarti per scrivere nel forum
4 risposte