Convertir en VBA

Le
François B
bonjour,

j'ai un phénomène assez étrange : voulant convertir une colonne dans
laquelle j'ai des dates au format US (MM/JJ/AAAA) vers un format bien de chez
moi () (JJ/MM/AAAA) j'utilise la fonction convertir (données - convertir)
sauf que je ne redistribue pas sur d'autres colonnes je reste sur celle en
cours.

mon problème : cela fonctionne parfaitement dés lors que je passe par les
menus et plus du tout dés que je transcris cette opération en VBA

code (généré par XL) :

Columns("J:J").Select
Selection.TextToColumns Destination:=Range("J1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:úlse,
Tab:=True, _
Semicolon:úlse, Comma:úlse, Space:úlse, Other:úlse,
FieldInfo _
:=Array(1, 3), TrailingMinusNumbers:=True

quelqu'un a t'il une idée ??

par avance un grand merci !!!!!

cdt,

François
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
MichDenis
Le #4331531
Tu adaptes le nom de la feuille :

Sub test()
With Worksheets("Feuil1")
With .Columns("J:J")
.TextToColumns Destination:=Range("J1"), _
DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, _
ConsecutiveDelimiter:úlse, Tab:=True, _
Semicolon:úlse, Comma:úlse, _
Space:úlse, Other:úlse, _
FieldInfo:=Array(1, 3), TrailingMinusNumbers:=True
End With
End With
End Sub



"François B"
bonjour,

j'ai un phénomène assez étrange : voulant convertir une colonne dans
laquelle j'ai des dates au format US (MM/JJ/AAAA) vers un format bien de chez
moi (...) (JJ/MM/AAAA) j'utilise la fonction convertir (données - convertir)
sauf que je ne redistribue pas sur d'autres colonnes je reste sur celle en
cours.

mon problème : cela fonctionne parfaitement dés lors que je passe par les
menus et plus du tout dés que je transcris cette opération en VBA ...

code (généré par XL) :

Columns("J:J").Select
Selection.TextToColumns Destination:=Range("J1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:úlse,
Tab:=True, _
Semicolon:úlse, Comma:úlse, Space:úlse, Other:úlse,
FieldInfo _
:=Array(1, 3), TrailingMinusNumbers:=True

quelqu'un a t'il une idée ??

par avance un grand merci !!!!!

cdt,

François
Daniel
Le #4331521
Bonjour.
On dirait une erreur de l'enregistreur...
Essaie avec :
FieldInfo _
:=Array(1, 2), TrailingMinusNumbers:=True
Cordialement.
Daniel
"François B" news:
bonjour,

j'ai un phénomène assez étrange : voulant convertir une colonne dans
laquelle j'ai des dates au format US (MM/JJ/AAAA) vers un format bien de
chez
moi (...) (JJ/MM/AAAA) j'utilise la fonction convertir (données -
convertir)
sauf que je ne redistribue pas sur d'autres colonnes je reste sur celle en
cours.

mon problème : cela fonctionne parfaitement dés lors que je passe par les
menus et plus du tout dés que je transcris cette opération en VBA ...

code (généré par XL) :

Columns("J:J").Select
Selection.TextToColumns Destination:=Range("J1"),
DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:úlse,
Tab:=True, _
Semicolon:úlse, Comma:úlse, Space:úlse, Other:úlse,
FieldInfo _
:=Array(1, 3), TrailingMinusNumbers:=True

quelqu'un a t'il une idée ??

par avance un grand merci !!!!!

cdt,

François




François B
Le #4331431
bonjour,

merci pour votre réponse. je viens de tester et malheureusement cela ne
fonctionne pas ...

peut être est-ce dû au format des cellules ... la macro fonctionne (même
avant la dernière modif ...) quand je suis sur une cellule qui contient
quelque chose qu'il ne reconnait pas >>> 02/16/2007 où le mois 16 n'est
pas compris...

par contre, elle ne marche toujours pas si je suis sur 02/08/2007 où la
réelle date n'est pas le 2 août mais le 8 février ...

Par contre : en passant par le menu, il converti correctement cette date
pour afficher : 08/02/2007 ....

bref ...

en tout cas merci pour l'aide apportée !!

cdt,

François


Tu adaptes le nom de la feuille :

Sub test()
With Worksheets("Feuil1")
With .Columns("J:J")
.TextToColumns Destination:=Range("J1"), _
DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, _
ConsecutiveDelimiter:úlse, Tab:=True, _
Semicolon:úlse, Comma:úlse, _
Space:úlse, Other:úlse, _
FieldInfo:=Array(1, 3), TrailingMinusNumbers:=True
End With
End With
End Sub



"François B"
bonjour,

j'ai un phénomène assez étrange : voulant convertir une colonne dans
laquelle j'ai des dates au format US (MM/JJ/AAAA) vers un format bien de chez
moi (...) (JJ/MM/AAAA) j'utilise la fonction convertir (données - convertir)
sauf que je ne redistribue pas sur d'autres colonnes je reste sur celle en
cours.

mon problème : cela fonctionne parfaitement dés lors que je passe par les
menus et plus du tout dés que je transcris cette opération en VBA ...

code (généré par XL) :

Columns("J:J").Select
Selection.TextToColumns Destination:=Range("J1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:úlse,
Tab:=True, _
Semicolon:úlse, Comma:úlse, Space:úlse, Other:úlse,
FieldInfo _
:=Array(1, 3), TrailingMinusNumbers:=True

quelqu'un a t'il une idée ??

par avance un grand merci !!!!!

cdt,

François






François B
Le #4331391
bonjour !

en effet, cela semble fonctionner ... sauf que le résultat obtenu est au
format "texte" (peut être est-ce dû au format de départ ?)

ce qui est surprenant, c'est que si je change le format pour un format date
de type jj/mm/aaaa l'affichage reste sur: 12/1/2007 et ne me semble pas être
reconnu comme une date ... en fait il faut alors que je fasse un F2 pour
"valider" le contenu ...

bref bref ... j'ai peur que le problème vienne du fichier initial et d'un
format de cellule plus que louche ...

en tout cas merci encore !!

cdt,

François


Bonjour.
On dirait une erreur de l'enregistreur...
Essaie avec :
FieldInfo _
:=Array(1, 2), TrailingMinusNumbers:=True
Cordialement.
Daniel
"François B" news:
bonjour,

j'ai un phénomène assez étrange : voulant convertir une colonne dans
laquelle j'ai des dates au format US (MM/JJ/AAAA) vers un format bien de
chez
moi (...) (JJ/MM/AAAA) j'utilise la fonction convertir (données -
convertir)
sauf que je ne redistribue pas sur d'autres colonnes je reste sur celle en
cours.

mon problème : cela fonctionne parfaitement dés lors que je passe par les
menus et plus du tout dés que je transcris cette opération en VBA ...

code (généré par XL) :

Columns("J:J").Select
Selection.TextToColumns Destination:=Range("J1"),
DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:úlse,
Tab:=True, _
Semicolon:úlse, Comma:úlse, Space:úlse, Other:úlse,
FieldInfo _
:=Array(1, 3), TrailingMinusNumbers:=True

quelqu'un a t'il une idée ??

par avance un grand merci !!!!!

cdt,

François









Daniel
Le #4331361
Si tu le veux tu mettre ton classeur sur www.cjoint.com et poster l'adresse
générée.
Daniel
"François B" news:
bonjour !

en effet, cela semble fonctionner ... sauf que le résultat obtenu est au
format "texte" (peut être est-ce dû au format de départ ?)

ce qui est surprenant, c'est que si je change le format pour un format
date
de type jj/mm/aaaa l'affichage reste sur: 12/1/2007 et ne me semble pas
être
reconnu comme une date ... en fait il faut alors que je fasse un F2 pour
"valider" le contenu ...

bref bref ... j'ai peur que le problème vienne du fichier initial et d'un
format de cellule plus que louche ...

en tout cas merci encore !!

cdt,

François


Bonjour.
On dirait une erreur de l'enregistreur...
Essaie avec :
FieldInfo _
:=Array(1, 2), TrailingMinusNumbers:=True
Cordialement.
Daniel
"François B" de
news:
bonjour,

j'ai un phénomène assez étrange : voulant convertir une colonne dans
laquelle j'ai des dates au format US (MM/JJ/AAAA) vers un format bien
de
chez
moi (...) (JJ/MM/AAAA) j'utilise la fonction convertir (données -
convertir)
sauf que je ne redistribue pas sur d'autres colonnes je reste sur celle
en
cours.

mon problème : cela fonctionne parfaitement dés lors que je passe par
les
menus et plus du tout dés que je transcris cette opération en VBA ...

code (généré par XL) :

Columns("J:J").Select
Selection.TextToColumns Destination:=Range("J1"),
DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:úlse,
Tab:=True, _
Semicolon:úlse, Comma:úlse, Space:úlse, Other:úlse,
FieldInfo _
:=Array(1, 3), TrailingMinusNumbers:=True

quelqu'un a t'il une idée ??

par avance un grand merci !!!!!

cdt,

François











François B
Le #4331351
encore moi ...

après plusieurs tests ...

cette manip fonctionne sur une cellule contenant quelque chose qu'il
reconnait comme une date exemple : 02/09/2007 qu'il remet correctement en
9/2/2007 mais en format texte ... se pose alors le problème de la
"conversion" en format date comme évoqué précédement ...

par contre, cela ne fonctionne pas pour : 02/26/2007 où là, le "array(1,3)
fonctionne parfaitement et sans problème de format ...

cdt,

François


Bonjour.
On dirait une erreur de l'enregistreur...
Essaie avec :
FieldInfo _
:=Array(1, 2), TrailingMinusNumbers:=True
Cordialement.
Daniel
"François B" news:
bonjour,

j'ai un phénomène assez étrange : voulant convertir une colonne dans
laquelle j'ai des dates au format US (MM/JJ/AAAA) vers un format bien de
chez
moi (...) (JJ/MM/AAAA) j'utilise la fonction convertir (données -
convertir)
sauf que je ne redistribue pas sur d'autres colonnes je reste sur celle en
cours.

mon problème : cela fonctionne parfaitement dés lors que je passe par les
menus et plus du tout dés que je transcris cette opération en VBA ...

code (généré par XL) :

Columns("J:J").Select
Selection.TextToColumns Destination:=Range("J1"),
DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:úlse,
Tab:=True, _
Semicolon:úlse, Comma:úlse, Space:úlse, Other:úlse,
FieldInfo _
:=Array(1, 3), TrailingMinusNumbers:=True

quelqu'un a t'il une idée ??

par avance un grand merci !!!!!

cdt,

François









François B
Le #4331321
voilà :

http://cjoint.com/?djoMQ2Jm58

encore merci !

cdt,

François


Si tu le veux tu mettre ton classeur sur www.cjoint.com et poster l'adresse
générée.
Daniel
"François B" news:
bonjour !

en effet, cela semble fonctionner ... sauf que le résultat obtenu est au
format "texte" (peut être est-ce dû au format de départ ?)

ce qui est surprenant, c'est que si je change le format pour un format
date
de type jj/mm/aaaa l'affichage reste sur: 12/1/2007 et ne me semble pas
être
reconnu comme une date ... en fait il faut alors que je fasse un F2 pour
"valider" le contenu ...

bref bref ... j'ai peur que le problème vienne du fichier initial et d'un
format de cellule plus que louche ...

en tout cas merci encore !!

cdt,

François


Bonjour.
On dirait une erreur de l'enregistreur...
Essaie avec :
FieldInfo _
:=Array(1, 2), TrailingMinusNumbers:=True
Cordialement.
Daniel
"François B" de
news:
bonjour,

j'ai un phénomène assez étrange : voulant convertir une colonne dans
laquelle j'ai des dates au format US (MM/JJ/AAAA) vers un format bien
de
chez
moi (...) (JJ/MM/AAAA) j'utilise la fonction convertir (données -
convertir)
sauf que je ne redistribue pas sur d'autres colonnes je reste sur celle
en
cours.

mon problème : cela fonctionne parfaitement dés lors que je passe par
les
menus et plus du tout dés que je transcris cette opération en VBA ...

code (généré par XL) :

Columns("J:J").Select
Selection.TextToColumns Destination:=Range("J1"),
DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:úlse,
Tab:=True, _
Semicolon:úlse, Comma:úlse, Space:úlse, Other:úlse,
FieldInfo _
:=Array(1, 3), TrailingMinusNumbers:=True

quelqu'un a t'il une idée ??

par avance un grand merci !!!!!

cdt,

François
















isabelle
Le #4331311
bonjour Francois,

peut être avec une autre approche :

Sub test()
mois = Mid(Range("A1"), 1, 2)
jour = Mid(Range("A1"), 4, 2)
année = Mid(Range("A1"), 7, 4)
dt = CDate(année & "/" & mois & "/" & jour)
End Sub

isabelle

encore moi ...

après plusieurs tests ...

cette manip fonctionne sur une cellule contenant quelque chose qu'il
reconnait comme une date exemple : 02/09/2007 qu'il remet correctement en
9/2/2007 mais en format texte ... se pose alors le problème de la
"conversion" en format date comme évoqué précédement ...

par contre, cela ne fonctionne pas pour : 02/26/2007 où là, le "array(1,3)
fonctionne parfaitement et sans problème de format ...

cdt,

François



Bonjour.
On dirait une erreur de l'enregistreur...
Essaie avec :
FieldInfo _
:=Array(1, 2), TrailingMinusNumbers:=True
Cordialement.
Daniel
"François B" news:

bonjour,

j'ai un phénomène assez étrange : voulant convertir une colonne dans
laquelle j'ai des dates au format US (MM/JJ/AAAA) vers un format bien de
chez
moi (...) (JJ/MM/AAAA) j'utilise la fonction convertir (données -
convertir)
sauf que je ne redistribue pas sur d'autres colonnes je reste sur celle en
cours.

mon problème : cela fonctionne parfaitement dés lors que je passe par les
menus et plus du tout dés que je transcris cette opération en VBA ...

code (généré par XL) :

Columns("J:J").Select
Selection.TextToColumns Destination:=Range("J1"),
DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:úlse,
Tab:=True, _
Semicolon:úlse, Comma:úlse, Space:úlse, Other:úlse,
FieldInfo _
:=Array(1, 3), TrailingMinusNumbers:=True

quelqu'un a t'il une idée ??

par avance un grand merci !!!!!

cdt,

François











Modeste
Le #4331281
Bonsour® François B avec ferveur ;o))) vous nous disiez :

j'ai un phénomène assez étrange : voulant convertir une colonne dans
laquelle j'ai des dates au format US (MM/JJ/AAAA) vers un format bien de chez
moi (...) (JJ/MM/AAAA) j'utilise la fonction convertir (données - convertir)
sauf que je ne redistribue pas sur d'autres colonnes je reste sur celle en
cours.

mon problème : cela fonctionne parfaitement dés lors que je passe par les
menus et plus du tout dés que je transcris cette opération en VBA ...


quelqu'un a t'il une idée ??


sous XP il faut ajouter l'option Local=true
code (généré par XL) :
Columns("J:J").Select

Selection.TextToColumns Destination:=Range("J1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:úlse, _
Tab:=True, Semicolon:úlse, Comma:úlse, Space:úlse, Other:úlse, _
FieldInfo :=Array(1, 3), TrailingMinusNumbers:=True, Local=True

--
--
@+
;o)))

François B
Le #4331201
bonjour Isabelle,

cette méthode fonctionne en effet !

même si elle n'est pas dans la phylosophie de départ ...

merci encore !

cdt,

François


bonjour Francois,

peut être avec une autre approche :

Sub test()
mois = Mid(Range("A1"), 1, 2)
jour = Mid(Range("A1"), 4, 2)
année = Mid(Range("A1"), 7, 4)
dt = CDate(année & "/" & mois & "/" & jour)
End Sub

isabelle

encore moi ...

après plusieurs tests ...

cette manip fonctionne sur une cellule contenant quelque chose qu'il
reconnait comme une date exemple : 02/09/2007 qu'il remet correctement en
9/2/2007 mais en format texte ... se pose alors le problème de la
"conversion" en format date comme évoqué précédement ...

par contre, cela ne fonctionne pas pour : 02/26/2007 où là, le "array(1,3)
fonctionne parfaitement et sans problème de format ...

cdt,

François



Bonjour.
On dirait une erreur de l'enregistreur...
Essaie avec :
FieldInfo _
:=Array(1, 2), TrailingMinusNumbers:=True
Cordialement.
Daniel
"François B" news:

bonjour,

j'ai un phénomène assez étrange : voulant convertir une colonne dans
laquelle j'ai des dates au format US (MM/JJ/AAAA) vers un format bien de
chez
moi (...) (JJ/MM/AAAA) j'utilise la fonction convertir (données -
convertir)
sauf que je ne redistribue pas sur d'autres colonnes je reste sur celle en
cours.

mon problème : cela fonctionne parfaitement dés lors que je passe par les
menus et plus du tout dés que je transcris cette opération en VBA ...

code (généré par XL) :

Columns("J:J").Select
Selection.TextToColumns Destination:=Range("J1"),
DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:úlse,
Tab:=True, _
Semicolon:úlse, Comma:úlse, Space:úlse, Other:úlse,
FieldInfo _
:=Array(1, 3), TrailingMinusNumbers:=True

quelqu'un a t'il une idée ??

par avance un grand merci !!!!!

cdt,

François














Publicité
Poster une réponse
Anonyme