Formater une colonne Excel

jakata Messages postés 35 Date d'inscription dimanche 5 novembre 2000 Statut Membre Dernière intervention 30 juillet 2009 - 29 avril 2005 à 15:22
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 - 30 avril 2005 à 09:45
Bonjour,

j'ai un petit souci.
J'ai fait une fonction javascript qui rempli une page Excel, jusque là pas de problème.
Le fait est que quand je veux entrer des dates, qui sont entrées comme string 'jj/mm/aaaa', Excel me change le mois et le jour.
J'aimerais formater cette colonne date au bon format avec ma fonction javascript.
Existe-t-il des propriétés ou méthodes qui peuvent faire cela en sachant que j'utilise l'objet ActiveX?

Merci d'avance.

Jakata

7 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
29 avril 2005 à 15:31
Bonjour,
Excel me change le mois et le jour.

pas sûr ça : n'est-ca pas parce que
qu'on envoie jj/mm/aaaa et qu'excel
fait 2 divisions ( jj/mm puis résultat/aaaa )
il ne faudrait pas envoyer 'jj/mm/aaaa ou
définir la cellule comme recevant du texte ?
un tout petit extrait du code ?
Cordialement. Bul. ~Site~~[mailto:marcelBultez@tiscali.fr Mail]~
0
jakata Messages postés 35 Date d'inscription dimanche 5 novembre 2000 Statut Membre Dernière intervention 30 juillet 2009
29 avril 2005 à 15:38
je voulais dire par 'il ma change le mois et le jour' qu'il me les inverse.
voici mon en gros mon code (code que j'ai trouvé sur ce site )

ExcelApp =
new ActiveXObject("Excel.Application");


fso =
new ActiveXObject("Scripting.FileSystemObject");




strFile = "C:\";


strFile += strName;


strFile += ".xls";





if (fso.FileExists(strFile))
//file exist


{


bExist =
true;


ExcelBook = ExcelApp.Workbooks.Open(strFile);


}



else


{


bExist =
false;


ExcelBook = ExcelApp.Workbooks.Add();


}
//end if


ExcelApp.Cells.Clear;
//clear all cells of the worksheet


iTempRow = aExcell.length;



for(iRow=1; iRow<iTempRow; iRow++)


{


iTempCols = aExcell[iRow].length;



for(jCol=1; jCol<iTempCols; jCol++)


ExcelBook.ActiveSheet.Cells(iRow, jCol).Value = aExcell[iRow][jCol];
//"***This is column " + jCol + ", row " + iRow;


}
//end for



if(bExist)


ExcelBook.Save();



else


ExcelBook.SaveAs(strFile);




ExcelBook.Close();


ExcelApp.Quit();


ExcelBook =
null;


ExcelApp =
null;


fso =
null;

Jakata
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
29 avril 2005 à 15:57
transforme en date au format américain
si on envoie espacejj/mm/aaaa ou 'jj/mm/aaaa
c'est bon
si on envoie jj/mm/aaaa ou "jj/mm/aaaa
ça affiche mm/jj/aaaa
je ne connais pas assez excel pour savoir pourquoi.
mais d'autres personnes plus compétentes que moi
( et il y en a beaucoup ici ) vont répondrent.
ou poser la question à celui qui à écrit le script ?
Cordialement. Bul. ~Site~~[mailto:marcelBultez@tiscali.fr Mail]~
0
jakata Messages postés 35 Date d'inscription dimanche 5 novembre 2000 Statut Membre Dernière intervention 30 juillet 2009
29 avril 2005 à 15:59
Jakata
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jakata Messages postés 35 Date d'inscription dimanche 5 novembre 2000 Statut Membre Dernière intervention 30 juillet 2009
29 avril 2005 à 16:00
Merci.
Je vais essayer ça.

Jakata
0
jakata Messages postés 35 Date d'inscription dimanche 5 novembre 2000 Statut Membre Dernière intervention 30 juillet 2009
29 avril 2005 à 16:05
ça fonctionne super !!!!
merci BEAUCOUP

Jakata
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
30 avril 2005 à 09:45
Oui, mais ce n'est guère satisfaisant...
si on saisit jj/mm/aaaa avec Excel c'est correct.
Il doit bien exister une solution pour que, si
c'est un programme qui envoie la zone, cela
fonctionne aussi. Je n'ai pas la réponse.
Cordialement. Bul. ~Site~~[mailto:marcelBultez@tiscali.fr Mail]~
0
Rejoignez-nous