Bonjour,
Je cherche à formater une colonne d'un fichier excel pour éviter de le faire cellule par cellule.
J'essaie donc un truc du genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
          foreach (DataColumn col in dataSet.Tables[0].Columns)
          {
            ((Range)worksheet.Cells[currRow, i]).Value2 = col.ColumnName;
            if (col.DataType == typeof(DateTime))
            {
              ((Range)worksheet.Columns[i,i]).NumberFormat = "dd/mm/yyyy hh:mm:ss";
            }
            i++;
          }
Evidemment, le code ci-dessus ne fonctionne pas.
1. comment déterminer un Range comprenant ma colonne ?
2. comment formater ce range.

Si je fais le code suivant sur une cellule :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
((Range)worksheet.Cells[currRow, i + 1]).NumberFormat = "dd/mm/yyyy hh:mm:ss";
(code repris d'une macro créée sur l'excel du même ordi)
j'ai le message d'erreur suivant
Impossible de définir la propriété NumberFormat de la classe Range.