J'essaie de convertir un tableau HTML en Excel en Javascript en utilisant le nouveau ActiveXObject("Excel.application")
. Bascially I boucle à travers les cellules de tableau et insérer la valeur de la cellule correspondante dans Excel:Comment personnaliser le format de date lors de la création de cellules Excel via javascript (activexobject)?
//for each table cell
oSheet.Cells(x,y).value = cell.innerText;
Le problème est que lorsque la cellule est dans un format de date du « jj-mm-aaaa » (par exemple 09/10/2008), Excel aurait lu comme «mm-jj-aaaa» (c'est à dire 09 oct 2008). J'ai essayé de préciser NumberFormat
comme:
oSheet.Cells(x,y).NumberFormat = 'dd-mm-yyyy';
Mais il n'a pas d'effet. Il semble que cela n'affecte que la façon dont excel afficher la valeur, pas analyser. Ma seule solution est maintenant d'échanger la date comme:
var txt = cell.innerText;
if(/^(\d\d)-(\d\d)-\d\d\d\d$/.test(txt)) txt = txt.replace(/^(\d\d)-(\d\d)/,'$2-$1');
Mais je suis inquiète que ce n'est pas générique et un réglage de la machine differnt échouerait cela.
Existe-t-il un moyen de spécifier comment exceller analyser la valeur d'entrée?
Wh at est les paramètres régionaux Windows du PC? – Fionnuala