C# Scrivere in un file excel

di il
1 risposte

C# Scrivere in un file excel

Ciao a tutti,
devo fare un programmino C# che raccoglie un po' di dati (senza sapere a priori quanti) e li trasferisca in un file Excel.
So come creare il suddetto file e come inserire dei dati, ma solo se è noto a priori quanti sono, utilizzando un array bidimensionale:

double[,] saRet = new double[5, 5];
//loop di inserimento dai in saRet
range.set_Value(Missing.Value, saRet);


Questo modo però non va bene per il mio problema, sia perchè non so a priori quanti dati avrò (quindi non posso inizializzare saRet), sia perchè non va bene per dati di tipo misto (double, stringhe, interi...).
Sarebbe opportuno avere un modo per accedere singolarmente alle celle, un po' come fanno le macro, tipo:

Range(Cells(1,1),Cells(1,1))= "dato1"
Range(Cells(1,2),Cells(1,2))= 100
Range(Cells(2,1),Cells(2,1))= "dato2"
Range(Cells(2,2),Cells(2,2))= 100

Come posso fare?


Inoltre, quando chiudo il file mi appare la finestra di dialogo di salvataggio. Esiste un modo per salvare automaticamente con un nome predefinito? (Credo che la funzione Workbook.SaveAs possa servire, ma non ho capito tutti i parametri che vuole)

Grazie mille

1 Risposte

  • Re: C# Scrivere in un file excel

    Non so se la soluzione che ti propongo fa al caso tuo, ma puoi generare file exel semplicemente creando xml; per studiare come costruire l'xml prova a creare in Excel un worksheet con dati di prova e a salvarlo in formato xml. Vantaggio della soluzione: non devi usare le API di Office; svantaggi: grosso lavoro di costruzione dell'xml.
Devi accedere o registrarti per scrivere nel forum
1 risposte