Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Macro Excel 4.0

12 réponses
Avatar
Killian2801
Bonjour,

Je souhaiterais recourir à la fonction permettant d'ouvrir automatiquement
un fichier .txt
J'ai donc utilisé :
OUVRIR.TEXTE("C:\ResultM.txt";;1;1;1;VRAI;VRAI;VRAI;;;;;), qui me donne un
résultat satisfaisant; mais j'aimerais pouvoir paramétrer certaines colonnes
(les colonnes 9,10 et 11) de mon fichier en format date de type "MAJ" soit
MMYYDD.

J'ai bien identifié que ce paramétrage était lié au dernier terme de la
fonction OUVRIR() mais je ne suis pas parvenu à en trouver la syntaxe.
Y a t-il quelqu'un pour m'aider?
Vous remerciant par avance.

2 réponses

1 2
Avatar
Daniel.C
Il y a peut-être une confusion de ta part. Tu dis que tu veux que les dates
soient interprétées comme MAJ. Ce que tu codes dans ta macro, c'est le
format de date qui se trouve dans le fichier (ici AMD). D'autre part, il
s'agit des champs 8,9 et 10 et non 9, 10 et 11. Enfin, la syntaxe est la
même que celle d'Excel 2007 :
Workbooks.OpenText Filename:="E:DonneesDanielmpfeResultP.txt",
Origin:= _
xlMSDOS, StartRow:=1, DataType:=xlDelimited,
TextQualifier:=xlDoubleQuote _
, ConsecutiveDelimiter:=True, Tab:=True, Semicolon:=True,
Comma:=True, _
Space:úlse, Other:úlse, OtherChar:="5",
FieldInfo:=Array(Array(1, 1) _
, Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1),
Array(7, 1), Array(8, 5), _
Array(9, 5), Array(10, 5))
sauf que tu es en français. Il faut donc utilise le format 5 pour ces
champs. Le problème est que je ne connais pas la représentation d'une
matrice, en français. C'est l'équivalent de "array" dans la formule
ci-dessus.
Dernière chose, comme tu es en champs délimité, la valeur du 5e champ
devrait être 3.
=OUVRIR.TEXTE("L:Comptabilité RCComptabilité
ComplémentaireCMUESQUIF_RC_QueryResultP";;1;1;3;VRAI;VRAI;VRAI)
Daniel
"Killian2801" a écrit dans le
message de news:
Tu trouveras ci-joint les 2 liens ainsi obtenus sous cjoint.com :
Fichier .txt : http://cjoint.com/?dBqpWbzjgd
Fichier .xls : http://cjoint.com/?dBqqYdW4wm

Encore une fois merci.




Bonjour.
Peux-tu mettre un extrait de ton fichier de quelques lignes sur
www.cjoint.com ? Remplace les éventuelles données confidentielles. Poste
ensuite l'adresse générée.
Daniel
"Killian2801" a écrit dans le
message de news:
Bonjour Daniel,

Malgré maints essais, je ne suis toujours pas parvenu à identifier la
syntaxe adéquate... ça m'énerve!!!


Regarde si ce qui suit peut t'aider :
extrait de l'aide de OPEN.TEXT :
Field_info is an array which consists of the following elements:
"column
number, data_format", if file_type is 1; or "start_pos, data_format"
if
file_type is 2.
extrait de l'aide de TEXT.TO.COLUMNS :
Field_Info is an array which consists of the following elements:
"column
number, data_format", if data_type is 1; or "start_pos, data_format"
if
data_type is 2. The second number defines the column's data format,
and
can
be one of the following.

2nd Number Data Format

1 General
2 Text
3 Date, in the form MDY
4 Date, in the form DMY
5 Date, in the form YMD
6 Date, in the form MYD
7 Date, in the form DYM
8 Date, in the form YDM
9 Do not import column (skip)

Daniel
"Killian2801" a écrit dans le
message de news:
Bonjour et merci de ta participation.

En effet, c'est bien ce qu'il me semblait. Toutefois, il existe une
fonction
Macro Excel 4.0 OUVRIR.TEXTE() qui en tout état de cause devrait
solutionner
mon problème... sauf que je n'ai pas la syntaxe adéquate pour le
dernier
terme de la fonction.
Dans la solution que tu me proposes, je suis bien ennuyé car je
perds
une
partie de l'information pour les colonnes qui doivent être importées
au
format texte commençant par un zéro.

As tu d'autres suggestions?


Bonsour® Killian2801 avec ferveur ;o))) vous nous disiez :

De ce que mon anglais me permet de comprendre, je ne suis pas sûr
que
la fonction que tu me proposes, réponde parfaitement à mon
problème
de
paramétrage de colonne. En tout cas, je ne suis pas parvenu à
identifier la syntaxe appropriée.


et pour cause....
il n'y est nullement fait mention de parametrage de colonnes dans
la
fonction
OUVRIR

il faut faire ensuite une boucle sur les colonnes considérées en
utilisant la
fonction FORMAT.NOMBRE("MMAADD")

--
@+
;o)))






















Avatar
Killian2801
Oui, oui; j'écris encore en langage Macro Excel 4.0: je ne connais pas le VBA
mais il va bien falloir qu'un jour je m'y mette.
Pour des questions de confidentialité, j'ai supprimé une colonne, d'où le
décalage des colonnes.
J'ai également eu recours à l'enregistrement de macro en VBA, ce qui m'a
donné le même résultat que toi avec la fonction Array. Mais je ne sais pas la
transposer en macro Excel 4.0.
Bon, je vais tâcher de me débrouiller autrement.
Merci beaucoup Daniel pour tout le temps que tu as bien voulu m'accorder.
Bonne continuation


Il y a peut-être une confusion de ta part. Tu dis que tu veux que les dates
soient interprétées comme MAJ. Ce que tu codes dans ta macro, c'est le
format de date qui se trouve dans le fichier (ici AMD). D'autre part, il
s'agit des champs 8,9 et 10 et non 9, 10 et 11. Enfin, la syntaxe est la
même que celle d'Excel 2007 :
Workbooks.OpenText Filename:="E:DonneesDanielmpfeResultP.txt",
Origin:= _
xlMSDOS, StartRow:=1, DataType:=xlDelimited,
TextQualifier:=xlDoubleQuote _
, ConsecutiveDelimiter:=True, Tab:=True, Semicolon:=True,
Comma:=True, _
Space:úlse, Other:úlse, OtherChar:="5",
FieldInfo:=Array(Array(1, 1) _
, Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1),
Array(7, 1), Array(8, 5), _
Array(9, 5), Array(10, 5))
sauf que tu es en français. Il faut donc utilise le format 5 pour ces
champs. Le problème est que je ne connais pas la représentation d'une
matrice, en français. C'est l'équivalent de "array" dans la formule
ci-dessus.
Dernière chose, comme tu es en champs délimité, la valeur du 5e champ
devrait être 3.
=OUVRIR.TEXTE("L:Comptabilité RCComptabilité
ComplémentaireCMUESQUIF_RC_QueryResultP";;1;1;3;VRAI;VRAI;VRAI)
Daniel
"Killian2801" a écrit dans le
message de news:
Tu trouveras ci-joint les 2 liens ainsi obtenus sous cjoint.com :
Fichier .txt : http://cjoint.com/?dBqpWbzjgd
Fichier .xls : http://cjoint.com/?dBqqYdW4wm

Encore une fois merci.




Bonjour.
Peux-tu mettre un extrait de ton fichier de quelques lignes sur
www.cjoint.com ? Remplace les éventuelles données confidentielles. Poste
ensuite l'adresse générée.
Daniel
"Killian2801" a écrit dans le
message de news:
Bonjour Daniel,

Malgré maints essais, je ne suis toujours pas parvenu à identifier la
syntaxe adéquate... ça m'énerve!!!


Regarde si ce qui suit peut t'aider :
extrait de l'aide de OPEN.TEXT :
Field_info is an array which consists of the following elements:
"column
number, data_format", if file_type is 1; or "start_pos, data_format"
if
file_type is 2.
extrait de l'aide de TEXT.TO.COLUMNS :
Field_Info is an array which consists of the following elements:
"column
number, data_format", if data_type is 1; or "start_pos, data_format"
if
data_type is 2. The second number defines the column's data format,
and
can
be one of the following.

2nd Number Data Format

1 General
2 Text
3 Date, in the form MDY
4 Date, in the form DMY
5 Date, in the form YMD
6 Date, in the form MYD
7 Date, in the form DYM
8 Date, in the form YDM
9 Do not import column (skip)

Daniel
"Killian2801" a écrit dans le
message de news:
Bonjour et merci de ta participation.

En effet, c'est bien ce qu'il me semblait. Toutefois, il existe une
fonction
Macro Excel 4.0 OUVRIR.TEXTE() qui en tout état de cause devrait
solutionner
mon problème... sauf que je n'ai pas la syntaxe adéquate pour le
dernier
terme de la fonction.
Dans la solution que tu me proposes, je suis bien ennuyé car je
perds
une
partie de l'information pour les colonnes qui doivent être importées
au
format texte commençant par un zéro.

As tu d'autres suggestions?


Bonsour® Killian2801 avec ferveur ;o))) vous nous disiez :

De ce que mon anglais me permet de comprendre, je ne suis pas sûr
que
la fonction que tu me proposes, réponde parfaitement à mon
problème
de
paramétrage de colonne. En tout cas, je ne suis pas parvenu à
identifier la syntaxe appropriée.


et pour cause....
il n'y est nullement fait mention de parametrage de colonnes dans
la
fonction
OUVRIR

il faut faire ensuite une boucle sur les colonnes considérées en
utilisant la
fonction FORMAT.NOMBRE("MMAADD")

--
@+
;o)))



























1 2