Prob de format Date à l'Import d'une table d'une page web

tarvel

XLDnaute Occasionnel
Bonsoir,
J'ai un souci de format date avec l'import du table d'une page web. Certaines dates sont au bon format mais d'autres inverses le mois et le jour (format anglais, français).
J'utilise ce code vba pour importer la table de la page web à une feuille excel
Code:
Set Htable = maPageHtml.getElementsByTagName("table") 'objet type table
Set maTable = Htable(0) 'premier tableau dans la page Web
For i = 1 To maTable.Rows.Length 'boucle sur toutes les lignes du tableau
For j = 1 To maTable.Rows(i - 1).Cells.Length 'boucle sur les cellules dans chaque ligne
Cells(i, j) = maTable.Rows(i - 1).Cells(j - 1).innerText
Next j
Next i
Je laisse un fichier exemple.zip qui contient le fichier excel test.xls (nom de la macro testdate) et le fichier testdate.htm à placer sous C:\

Je ne comprends pas que certaines dates soient correctement importées et d'autres non!
Merci pour votre aide...
 

Pièces jointes

  • exemple.zip
    11.6 KB · Affichages: 33
  • exemple.zip
    11.6 KB · Affichages: 27
  • exemple.zip
    11.6 KB · Affichages: 37

tarvel

XLDnaute Occasionnel
Re : Prob de format Date à l'Import d'une table d'une page web

Bonjour,
Qui pourrait m'aider...SVP!

En fait l'importation de la table provenant de la page web produit des erreurs de dates. On remarque que sur la Feuill1 les dates de la colonne A contiennent 02/10/2008 alors que cela devrait être 10/02/2008, idem pour 02/05/2008 au lieu de 05/02/2008...alors que toutes les autres dates importées sont correctes!
Je cherche le problème...Si quelqu'un pouvait m'éclairer!
Merci ;)
 
Dernière édition:

tarvel

XLDnaute Occasionnel
Re : Prob de format Date à l'Import d'une table d'une page web

Merci infiniment Qwazerty du forum sur Developpez.net ...ça fonctionne nickel, ça provient bien du format Date ou Texte dans l'importation (histoire du mm/jj/aa)
Donc il faut contrôler effectivement si la donnée importée est de format date ou texte et corriger en fonction!
J'ai rajouter ton code dans ma boucle (IsDate et CDate)
Code:
Set maPageHtml = ie.document
Set Htable = maPageHtml.getElementsByTagName("table") 'objet type table
Set maTable = Htable(0) 'premier tableau dans la page Web
For i = 1 To maTable.Rows.Length 'boucle sur toutes les lignes du tableau
For j = 1 To maTable.Rows(i - 1).Cells.Length 'boucle sur les cellules dans chaque ligne
Cells(i, j) = maTable.Rows(i - 1).Cells(j - 1).innerText
If IsDate(maTable.Rows(i - 1).Cells(j - 1).innerText) Then
        Cells(i, j) = CDate(maTable.Rows(i - 1).Cells(j - 1).innerText)
    Else
        Cells(i, j) = maTable.Rows(i - 1).Cells(j - 1).innerText
    End If
Next j
Next i
 

Discussions similaires

Réponses
2
Affichages
906

Statistiques des forums

Discussions
312 345
Messages
2 087 490
Membres
103 558
dernier inscrit
Lamine ABIDI