Page 1 sur 1

[R] Problème de date avec excel

Posté : jeu. 20 janv. 2011 14:37
par Eldes
Bonjour.

J aimerai rentrer des information sous SAP a partir d' un fichier excel. Tous fonctionne bien sauf pour les dates et les heures. En effet la cellule excel et en forme date et lorsque je la met sous SAP a l aide d'une variable elle me donne un chiffre incohérent. Après quelque recherche j ai déduit que SAP ne prends que les cellules texte. Comment pourrais je modifier la cellule qui as la forme 20/01/2011 (forme date) par 20012011 (forme texte).

Merci d'avance.

Re: [..] Problème de date avec excel

Posté : jeu. 20 janv. 2011 15:06
par zeshrek
il suffit de faire un stringsplit sur la date puis d'accoler les éléments pour en faire une date sans les '/' :

Code : Tout sélectionner

$date="20/01/2011"
$datesplit=stringsplit($date,"/")

$date=$datesplit[1]&$datesplit[2]&$datesplit[3]

msgbox(0,"",$date)

Re: [..] Problème de date avec excel

Posté : jeu. 20 janv. 2011 16:27
par jchd
$date = '20/01/2011'

$date = StringReplace($date, '/', '')

Re: [..] Problème de date avec excel

Posté : jeu. 20 janv. 2011 16:42
par zeshrek
Argl !!! Comme une quiche j'ai éssayé stringdelete au lieu de stringreplace, et forcément ca marchait pas ! :?
Bon, on va dire que ma solution offre l'avantage de pouvoir mettre la date dans le sens AAAAMMJJ si nécéssaire :roll:

Re: [..] Problème de date avec excel

Posté : jeu. 20 janv. 2011 18:15
par jchd
$date = '20/01/2011'
$dateISO = StringRegExpReplace($date, '(\d\d)\/(\d\d)\/(\d\d\d\d)', '$3/$2/$1')

Ok ce n'est peut-être pas forcément le plus efficace montre en main (à cause de la compilation de la regexp), et encore je n'en suis pas certain. Pas important sauf si 10000 utilisations par seconde.

Re: [..] Problème de date avec excel

Posté : mer. 26 janv. 2011 12:00
par Eldes
Après de multiple essais voilà ou j en arrive:
J ai lu mon résultat avec une message box et pour la date j obtiens le message suivant : 201101200000. Donc j ai vérifié dans mon tableau excel et l heure est a 00:00 ce qui correspond au quatre derniers 0.
Je pense que je dois changer la forme de la date que j ai mis dans manvataible $date et suprimer l heure.

J ai donc essayer avec

$date = _excelreadcell($feuille,35,5)
$date = _datetimeformat($date,1)

Msgbox(1,"test","" & $date)

Et la boite m indique rien.

Pouvez m aider encore s il vous plait?

Re: [..] Problème de date avec excel

Posté : mer. 26 janv. 2011 13:04
par FernandG
Bonjour,

En reprenant votre exemple et plus simplement car sans modification de votre fichier Excel :

Code : Tout sélectionner

$date = "201101200000"
$date = StringLeft($date, 8)

Msgbox(1,"test","" & $date)
Bonna journée.

Re: [..] Problème de date avec excel

Posté : mer. 26 janv. 2011 13:28
par Eldes
Merci sa me sera d' une grande utilité par contre la date est de la forme yyyymmdd et il faudrait qu elle soit de la forme ddmmyyyy

Merci d' avance

Re: [..] Problème de date avec excel

Posté : mer. 26 janv. 2011 13:34
par FernandG
Dans ce cas, on change de "méthode", à la jchd :wink:

Code : Tout sélectionner

$date = "201101200000"
$date = StringRegExpReplace($date, '(\d{4})(\d{2})(\d{2}).+', '$3$2$1')

Msgbox(1,"test","" & $date)

Re: [..] Problème de date avec excel

Posté : mer. 26 janv. 2011 14:42
par Eldes
Sa fonctionne merci beaucoup