Parse d'une ligne d'un fichier texte avec emplacement variable

Bonjour à tous,

J'ai besoin, pour l'avancée de mon projet, de parse la première ligne d'un fichier texte.

La ligne que je dois inspecter est toujours en première ligne et est toujours formatée de la même manière avec un nombre de caractère définis (26 caractères) et les caractères dont j'ai besoin (ils correspondent à la version du fichier) pour ensuite savoir quelle macro lancer se trouvent en 16e position sur 2 caractères.

J'imagine qu'il faut utiliser la fonction Mid pour cela, cependant, ma problématique est que le chemin du fichier texte que je dois inspecter n'est jamais le même.

Je fais la sélection de l'emplacement de mon fichier grâce à Application.GetOpenFilename cependant, j'aimerais savoir comment, à partir de ce moment, je peux dire à Excel d'aller inspecter la première ligne de ce fichier texte pour ensuite me permettre d'exécuter une macro ou une autre en fonction du contenu de cette fameuse ligne.

J'ai bien une variable pour mon nom de fichier, est ce que justement cela peux me permettre avec la fonction Mid d'aller inspecter la première ligne ou alors je n'y suis pas du tout?

L'objectif final est qu'une fois le fichier sélectionner, en fonction de la version du fichier (version qui est en donc en 16e position sur la première ligne de mon fichier texte) je puisse "saucissonner" le contenu du fichier texte sur 4 ou 5 caractères. A l'heure actuelle, c'est ce que font chaque bouton de l'onglet "Acceuil" indépendamment (le premier bouton découpe sur 4 et le second découpe sur 5) et j'aimerais réussir à ce que les deux boutons puissent découper aussi bien sur 4 que sur 5 caractères. Cette partie là, je vais la réaliser avec une condition, cependant, c'est le parse de la première ligne sur lequel je bute

Les fichiers sont dans le post suivant

Le fichier Excel avec mon code

Le fichier texte que je dois parse

11objet-test-28.txt (3.91 Ko)

Bonjour HellSpaw

chemin_test28= "c:\...\objet-test-28.txt  'à adapter
open chemin_test28 for input as  #1
Line input #1, ligne
car16et17= Mid(ligne, 16,2)
Close #1

Cdlt

@scraper Bonjour à toi et merci pour ta réponse.

Tu pourrais m'expliquer un peu plus ce que cela fait, car je ne suis pas sûr de tout comprendre dans ton code.

Merci à toi

Rechercher des sujets similaires à "parse ligne fichier texte emplacement variable"