VBA Selection et ouverture d'un fichier texte

Le
Domi
Bonjour à tous,
J'utilise dans une macro cette syntaxe pour ouvrir et formater rapidement un
fichier texte.Ca marche.

Workbooks.OpenText Filename:="D:test2006.txt", Origin:=xlMSDOS,
StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:úlse, Tab:=True,
Semicolon:=True, _
Comma:úlse, Space:úlse, Other:úlse, FieldInfo:=Array(Array(1,
2), _
Array(2, 2), Array(3, 1), Array(4, 4), Array(5, 2), Array(6, 2),
Array(7, 2), etc

Je voudrais pouvoir choisir via Application.Dialogs(xlDialogOpen).Show (ou
autre) le fichier et le formater ensuite comme ci dessus.
Ca coince, le fichier est bien selectionné mais la macro s'arrête sur
l'etape 1 de l'assistant import Texte si je fait ensuite "terminer" la
macro se pousuit et j'ai un message d'erreur qui me dit que le fichier
Fichier.xls est introuvable.
Que faut-il faire pour eviter cela ?

Ce que j'ai fait :
Application.DisplayAlerts = False
Application.ScreenUpdating = False
'Sélection du fichier à convertir (D:test2006.txt)
Select Case Application.Dialogs(xlDialogOpen).Show
Case True
Fichier = ActiveWorkbook.Name
Case False
MsgBox "Aucun fichier n'a été sélectionnné", vbExclamation, "Erreur"
Exit Sub
End Select
'
Workbooks.OpenText Filename:="Fichier", Origin:=xlMSDOS, StartRow:=1,
DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:úlse, Tab:=True,
Semicolon:=True, _
Comma:úlse, Space:úlse, Other:úlse, FieldInfo:=Array(Array(1,
2), _
Array(2, 2), Array(3, 1), Array(4, 4), Array(5, 2), Array(6, 2),
Array(7, 2), etc


Merci
Domi
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
ru-th
Le #4462051
Salut

un piste....
Pour le début
fichier = Application.GetOpenFilename("Fichiers texte (*.txt), *.txt")
If fichier = False Then Exit Sub
Workbooks.Open fichier

et après utilise l'enregistreur de macro avec donnée/convertir pour le
formatage

a+
rural thierry

"Domi" news:
Bonjour à tous,
J'utilise dans une macro cette syntaxe pour ouvrir et formater rapidement
un

fichier texte.Ca marche.

Workbooks.OpenText Filename:="D:test2006.txt", Origin:=xlMSDOS,
StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:úlse, Tab:=True,
Semicolon:=True, _
Comma:úlse, Space:úlse, Other:úlse,
FieldInfo:=Array(Array(1,

2), _
Array(2, 2), Array(3, 1), Array(4, 4), Array(5, 2), Array(6, 2),
Array(7, 2), ......etc

Je voudrais pouvoir choisir via Application.Dialogs(xlDialogOpen).Show (ou
autre) le fichier et le formater ensuite comme ci dessus.
Ca coince, le fichier est bien selectionné mais la macro s'arrête sur
l'etape 1 de l'assistant import Texte... si je fait ensuite "terminer" la
macro se pousuit et j'ai un message d'erreur qui me dit que le fichier
Fichier.xls est introuvable....
Que faut-il faire pour eviter cela ?

Ce que j'ai fait :
Application.DisplayAlerts = False
Application.ScreenUpdating = False
'Sélection du fichier à convertir (D:test2006.txt)
Select Case Application.Dialogs(xlDialogOpen).Show
Case True
Fichier = ActiveWorkbook.Name
Case False
MsgBox "Aucun fichier n'a été sélectionnné", vbExclamation,
"Erreur"

Exit Sub
End Select
'
Workbooks.OpenText Filename:="Fichier", Origin:=xlMSDOS, StartRow:=1,
DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:úlse, Tab:=True,
Semicolon:=True, _
Comma:úlse, Space:úlse, Other:úlse,
FieldInfo:=Array(Array(1,

2), _
Array(2, 2), Array(3, 1), Array(4, 4), Array(5, 2), Array(6, 2),
Array(7, 2), ...etc


Merci
Domi





FFO
Le #4461951
Salut à toi
A première vue ton instruction comporte une erreur de syntaxe dans la partie :
Workbooks.OpenText Filename:="Fichier", ....
Si tu fait appel à la valeur "Fichier" décrite en amont (Fichier =
ActiveWorkbook.Name) tu ne doit pas la mettre entre 2 guillemets
Met plutôt ainsi :
Workbooks.OpenText Filename:=Fichier, ....

Celà devrait mieux fonctionner

Dis moi !!!

Bonjour à tous,
J'utilise dans une macro cette syntaxe pour ouvrir et formater rapidement un
fichier texte.Ca marche.

Workbooks.OpenText Filename:="D:test2006.txt", Origin:=xlMSDOS,
StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:úlse, Tab:=True,
Semicolon:=True, _
Comma:úlse, Space:úlse, Other:úlse, FieldInfo:=Array(Array(1,
2), _
Array(2, 2), Array(3, 1), Array(4, 4), Array(5, 2), Array(6, 2),
Array(7, 2), ......etc

Je voudrais pouvoir choisir via Application.Dialogs(xlDialogOpen).Show (ou
autre) le fichier et le formater ensuite comme ci dessus.
Ca coince, le fichier est bien selectionné mais la macro s'arrête sur
l'etape 1 de l'assistant import Texte... si je fait ensuite "terminer" la
macro se pousuit et j'ai un message d'erreur qui me dit que le fichier
Fichier.xls est introuvable....
Que faut-il faire pour eviter cela ?

Ce que j'ai fait :
Application.DisplayAlerts = False
Application.ScreenUpdating = False
'Sélection du fichier à convertir (D:test2006.txt)
Select Case Application.Dialogs(xlDialogOpen).Show
Case True
Fichier = ActiveWorkbook.Name
Case False
MsgBox "Aucun fichier n'a été sélectionnné", vbExclamation, "Erreur"
Exit Sub
End Select
'
Workbooks.OpenText Filename:="Fichier", Origin:=xlMSDOS, StartRow:=1,
DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:úlse, Tab:=True,
Semicolon:=True, _
Comma:úlse, Space:úlse, Other:úlse, FieldInfo:=Array(Array(1,
2), _
Array(2, 2), Array(3, 1), Array(4, 4), Array(5, 2), Array(6, 2),
Array(7, 2), ...etc


Merci
Domi






Domi
Le #4461521
Et la lumière fut...
Salut et merci pour ton aide ;o)
Domi




"ru-th"
Salut

un piste....
Pour le début
fichier = Application.GetOpenFilename("Fichiers texte (*.txt), *.txt")
If fichier = False Then Exit Sub
Workbooks.Open fichier

et après utilise l'enregistreur de macro avec donnée/convertir pour le
formatage

a+
rural thierry

"Domi" news:
Bonjour à tous,
J'utilise dans une macro cette syntaxe pour ouvrir et formater rapidement
un

fichier texte.Ca marche.

Workbooks.OpenText Filename:="D:test2006.txt", Origin:=xlMSDOS,
StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:úlse, Tab:=True,
Semicolon:=True, _
Comma:úlse, Space:úlse, Other:úlse,
FieldInfo:=Array(Array(1,

2), _
Array(2, 2), Array(3, 1), Array(4, 4), Array(5, 2), Array(6, 2),
Array(7, 2), ......etc

Je voudrais pouvoir choisir via Application.Dialogs(xlDialogOpen).Show
(ou
autre) le fichier et le formater ensuite comme ci dessus.
Ca coince, le fichier est bien selectionné mais la macro s'arrête sur
l'etape 1 de l'assistant import Texte... si je fait ensuite "terminer" la
macro se pousuit et j'ai un message d'erreur qui me dit que le fichier
Fichier.xls est introuvable....
Que faut-il faire pour eviter cela ?

Ce que j'ai fait :
Application.DisplayAlerts = False
Application.ScreenUpdating = False
'Sélection du fichier à convertir (D:test2006.txt)
Select Case Application.Dialogs(xlDialogOpen).Show
Case True
Fichier = ActiveWorkbook.Name
Case False
MsgBox "Aucun fichier n'a été sélectionnné", vbExclamation,
"Erreur"

Exit Sub
End Select
'
Workbooks.OpenText Filename:="Fichier", Origin:=xlMSDOS, StartRow:=1,
DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:úlse, Tab:=True,
Semicolon:=True, _
Comma:úlse, Space:úlse, Other:úlse,
FieldInfo:=Array(Array(1,

2), _
Array(2, 2), Array(3, 1), Array(4, 4), Array(5, 2), Array(6, 2),
Array(7, 2), ...etc


Merci
Domi









Domi
Le #4461511
Le problème rest le même sans les guillmets sauf que je n'ai plus de message
à la fin...
Merci tout de même
Domi

"FFO"
Salut à toi
A première vue ton instruction comporte une erreur de syntaxe dans la
partie :
Workbooks.OpenText Filename:="Fichier", ....
Si tu fait appel à la valeur "Fichier" décrite en amont (Fichier > ActiveWorkbook.Name) tu ne doit pas la mettre entre 2 guillemets
Met plutôt ainsi :
Workbooks.OpenText Filename:=Fichier, ....

Celà devrait mieux fonctionner

Dis moi !!!

Bonjour à tous,
J'utilise dans une macro cette syntaxe pour ouvrir et formater rapidement
un
fichier texte.Ca marche.

Workbooks.OpenText Filename:="D:test2006.txt", Origin:=xlMSDOS,
StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:úlse, Tab:=True,
Semicolon:=True, _
Comma:úlse, Space:úlse, Other:úlse,
FieldInfo:=Array(Array(1,
2), _
Array(2, 2), Array(3, 1), Array(4, 4), Array(5, 2), Array(6, 2),
Array(7, 2), ......etc

Je voudrais pouvoir choisir via Application.Dialogs(xlDialogOpen).Show
(ou
autre) le fichier et le formater ensuite comme ci dessus.
Ca coince, le fichier est bien selectionné mais la macro s'arrête sur
l'etape 1 de l'assistant import Texte... si je fait ensuite "terminer" la
macro se pousuit et j'ai un message d'erreur qui me dit que le fichier
Fichier.xls est introuvable....
Que faut-il faire pour eviter cela ?

Ce que j'ai fait :
Application.DisplayAlerts = False
Application.ScreenUpdating = False
'Sélection du fichier à convertir (D:test2006.txt)
Select Case Application.Dialogs(xlDialogOpen).Show
Case True
Fichier = ActiveWorkbook.Name
Case False
MsgBox "Aucun fichier n'a été sélectionnné", vbExclamation,
"Erreur"
Exit Sub
End Select
'
Workbooks.OpenText Filename:="Fichier", Origin:=xlMSDOS, StartRow:=1,
DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:úlse, Tab:=True,
Semicolon:=True, _
Comma:úlse, Space:úlse, Other:úlse,
FieldInfo:=Array(Array(1,
2), _
Array(2, 2), Array(3, 1), Array(4, 4), Array(5, 2), Array(6, 2),
Array(7, 2), ...etc


Merci
Domi








FFO
Le #4461031
Essai ce code qui aprés l'avoir testé fonctionne :

Application.DisplayAlerts = False
Application.ScreenUpdating = False
'Sélection du fichier à convertir (D:test2006.txt)
ChDrive ("D")
ChDir "D:test"
Fichier = Application.GetOpenFilename("(*.txt),")
If Fichier = False Then
MsgBox "Aucun fichier n'a été sélectionnné", vbExclamation, "Erreur"
Exit Sub
End If
Workbooks.OpenText Filename:=Fichier, Origin:=xlMSDOS, StartRow:=1,
DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:úlse, Tab:=True, Semicolon:=True, _
Comma:úlse, Space:úlse, Other:úlse, FieldInfo:=Array(Array(1, 2), _
Array(2, 2), Array(3, 1), Array(4, 4), Array(5, 2), Array(6, 2), Array(7, 2))

Il a de plus l'avantage de prépositionner la boîte de dialogue sur une
partie du chemin
Reste à sélectionner la suite

Dis moi !!!!


Le problème rest le même sans les guillmets sauf que je n'ai plus de message
à la fin...
Merci tout de même
Domi

"FFO"
Salut à toi
A première vue ton instruction comporte une erreur de syntaxe dans la
partie :
Workbooks.OpenText Filename:="Fichier", ....
Si tu fait appel à la valeur "Fichier" décrite en amont (Fichier > > ActiveWorkbook.Name) tu ne doit pas la mettre entre 2 guillemets
Met plutôt ainsi :
Workbooks.OpenText Filename:=Fichier, ....

Celà devrait mieux fonctionner

Dis moi !!!

Bonjour à tous,
J'utilise dans une macro cette syntaxe pour ouvrir et formater rapidement
un
fichier texte.Ca marche.

Workbooks.OpenText Filename:="D:test2006.txt", Origin:=xlMSDOS,
StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:úlse, Tab:=True,
Semicolon:=True, _
Comma:úlse, Space:úlse, Other:úlse,
FieldInfo:=Array(Array(1,
2), _
Array(2, 2), Array(3, 1), Array(4, 4), Array(5, 2), Array(6, 2),
Array(7, 2), ......etc

Je voudrais pouvoir choisir via Application.Dialogs(xlDialogOpen).Show
(ou
autre) le fichier et le formater ensuite comme ci dessus.
Ca coince, le fichier est bien selectionné mais la macro s'arrête sur
l'etape 1 de l'assistant import Texte... si je fait ensuite "terminer" la
macro se pousuit et j'ai un message d'erreur qui me dit que le fichier
Fichier.xls est introuvable....
Que faut-il faire pour eviter cela ?

Ce que j'ai fait :
Application.DisplayAlerts = False
Application.ScreenUpdating = False
'Sélection du fichier à convertir (D:test2006.txt)
Select Case Application.Dialogs(xlDialogOpen).Show
Case True
Fichier = ActiveWorkbook.Name
Case False
MsgBox "Aucun fichier n'a été sélectionnné", vbExclamation,
"Erreur"
Exit Sub
End Select
'
Workbooks.OpenText Filename:="Fichier", Origin:=xlMSDOS, StartRow:=1,
DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:úlse, Tab:=True,
Semicolon:=True, _
Comma:úlse, Space:úlse, Other:úlse,
FieldInfo:=Array(Array(1,
2), _
Array(2, 2), Array(3, 1), Array(4, 4), Array(5, 2), Array(6, 2),
Array(7, 2), ...etc


Merci
Domi













Domi
Le #4460671
Salut,
ça marche ;o)
Merci
Domi

"FFO"
Essai ce code qui aprés l'avoir testé fonctionne :

Application.DisplayAlerts = False
Application.ScreenUpdating = False
'Sélection du fichier à convertir (D:test2006.txt)
ChDrive ("D")
ChDir "D:test"
Fichier = Application.GetOpenFilename("(*.txt),")
If Fichier = False Then
MsgBox "Aucun fichier n'a été sélectionnné", vbExclamation, "Erreur"
Exit Sub
End If
Workbooks.OpenText Filename:=Fichier, Origin:=xlMSDOS, StartRow:=1,
DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:úlse, Tab:=True, Semicolon:=True, _
Comma:úlse, Space:úlse, Other:úlse, FieldInfo:=Array(Array(1, 2), _
Array(2, 2), Array(3, 1), Array(4, 4), Array(5, 2), Array(6, 2), Array(7,
2))

Il a de plus l'avantage de prépositionner la boîte de dialogue sur une
partie du chemin
Reste à sélectionner la suite

Dis moi !!!!


Le problème rest le même sans les guillmets sauf que je n'ai plus de
message
à la fin...
Merci tout de même
Domi

"FFO"
Salut à toi
A première vue ton instruction comporte une erreur de syntaxe dans la
partie :
Workbooks.OpenText Filename:="Fichier", ....
Si tu fait appel à la valeur "Fichier" décrite en amont (Fichier >> > ActiveWorkbook.Name) tu ne doit pas la mettre entre 2 guillemets
Met plutôt ainsi :
Workbooks.OpenText Filename:=Fichier, ....

Celà devrait mieux fonctionner

Dis moi !!!

Bonjour à tous,
J'utilise dans une macro cette syntaxe pour ouvrir et formater
rapidement
un
fichier texte.Ca marche.

Workbooks.OpenText Filename:="D:test2006.txt", Origin:=xlMSDOS,
StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:úlse, Tab:=True,
Semicolon:=True, _
Comma:úlse, Space:úlse, Other:úlse,
FieldInfo:=Array(Array(1,
2), _
Array(2, 2), Array(3, 1), Array(4, 4), Array(5, 2), Array(6,
2),
Array(7, 2), ......etc

Je voudrais pouvoir choisir via Application.Dialogs(xlDialogOpen).Show
(ou
autre) le fichier et le formater ensuite comme ci dessus.
Ca coince, le fichier est bien selectionné mais la macro s'arrête sur
l'etape 1 de l'assistant import Texte... si je fait ensuite "terminer"
la
macro se pousuit et j'ai un message d'erreur qui me dit que le fichier
Fichier.xls est introuvable....
Que faut-il faire pour eviter cela ?

Ce que j'ai fait :
Application.DisplayAlerts = False
Application.ScreenUpdating = False
'Sélection du fichier à convertir (D:test2006.txt)
Select Case Application.Dialogs(xlDialogOpen).Show
Case True
Fichier = ActiveWorkbook.Name
Case False
MsgBox "Aucun fichier n'a été sélectionnné", vbExclamation,
"Erreur"
Exit Sub
End Select
'
Workbooks.OpenText Filename:="Fichier", Origin:=xlMSDOS,
StartRow:=1,
DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:úlse, Tab:=True,
Semicolon:=True, _
Comma:úlse, Space:úlse, Other:úlse,
FieldInfo:=Array(Array(1,
2), _
Array(2, 2), Array(3, 1), Array(4, 4), Array(5, 2), Array(6,
2),
Array(7, 2), ...etc


Merci
Domi















Publicité
Poster une réponse
Anonyme