Plusieurs autres conseils dans d’autres numéros de ExcelTips traitent de l’ouverture, de la lecture, de l’écriture, de l’ajout et de la fermeture de fichiers texte à partir d’une macro.

Une autre commande associée aux fichiers texte séquentiels est la commande Seek. S’il est utilisé sur un fichier ouvert, Seek positionne le pointeur de fichier interne sur un numéro de caractère spécifique dans le fichier. Le fragment de code suivant est un exemple de son utilisation:

Open "DOSTEXT.DAT" for Input as #1 iFileLen = LOF(1)

Seek 1, iFileLen / 2

Ces lignes de programme utilisent la fonction LOF pour déterminer la longueur du fichier. La dernière ligne positionne alors le pointeur de fichier interne à mi-chemin du fichier. Toute lecture ou écriture ultérieure du fichier aura lieu à partir de cette position.

Vous pouvez également utiliser Rechercher comme fonction pour déterminer votre position actuelle dans un fichier texte. Voici ce que fait ce code:

iCurPos = Seek(1)

Cette commande laisse le pointeur de fichier interne là où il se trouvait mais définit iCurPos sur une valeur représentant le nombre de caractères dans le fichier du pointeur. La valeur iCurPos est la position à laquelle toutes les lectures et écritures ultérieures du fichier auront lieu.

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (9367) s’applique à Microsoft Excel 2007, 2010, 2013, 2016, 2019 et Excel dans Office 365. Vous pouvez trouver une version de cette astuce pour l’ancienne interface de menu d’Excel ici:

link: / excel-Using_Seek_In_a_Macro [Utilisation de la recherche dans une macro].