Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Saisie automatique des paramètres dimportation txt

  • Initiateur de la discussion Steph
  • Date de début
S

Steph

Guest
Bonjour à tous,

J'aimerais savoir comment mettre par défaut les paramètres d'importation de fichier texte.

Je m'explique :
Je travaille sous excel en important des fichiers texte issus d'une machine. Ceci se fait sans problème grâce à l'onglet Données/Données externes/Importer le fichier texte.
A partir de ce moment, toute une série de fenetres s'ouvre me demandant quel fichier importer, à partir de quelle ligne, s'il est délimité ou non, etc...

Je voudrais savoir s'il est possible de stocker ces valeurs par une macro. Ainsi, à chaque nouveau fichier texte importé, excel ne me demanderait plus les différentes options.

Pour une trentaine d'importations par jour, ceci me faciliterait grandement le travail.

Pour info, les options que je souhaite avoir par défaut sont :
- Délimité
- Commlencer l'importation à la ligne 12
- Séparateurs : virgule
- Format des données en colonnes : standart

J'espère avoir été clair.

Merci bien pour votre aide et conseils.

Steph
 

JCA06

XLDnaute Occasionnel
Bonjour Steph,

Tu devrais faire un essai avec l'enregistreur de macro :
- Outils/Macro/Nouvelle macro ;
- tu enchaînes tes opérations ;
- tu arrêtes l'enregistrement ;
- puis tu va regarder ce que Excel a rédigé comme code (Alt+F11)
- tu supprimes les lignes inutiles et tu adaptes le code en fonction de tes besoins.

Je pense que le gros du travail sera fait. Il restera peut-être un point délicat à traiter pour ce qui est du choix du fichier à importer, mais les gentils xldiens et diennes se feront un plaisir de t'aider pour cela.

Fais l'essai puis revient dans ce post nous dire ce qu'il en est en copiant le code.

A plus.
 
S

Steph

Guest
Bonjour,

Merci pour ton conseil. On peut en tirer des choses intéressantes.

Atention, attention, voici ce que l'enregistreur de macro m'a généré :

Sub Importation()

With ActiveSheet.QueryTables.Add(Connection:= _
'TEXT;C:\\Documents and Settings\\Stéphane\\Mes documents\\CPG\\1a.TX0', _
Destination:=Range('A1'))
.Name = '1a_12'
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = xlWindows
.TextFileStartRow = 12
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = True
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1)
.Refresh BackgroundQuery:=False
End With
End Sub


Le but du jeu est maintenant de trouver une macro permettant de saisir le nom et l'emplacement du fichier que l'on veut insérer (en gras). j em'y colle avec espoir.

Si quelqu'un a une idée, je la prends avec grand plaisir.

Merci

Steph
 

JCA06

XLDnaute Occasionnel
Bon pour l'étape 1 !

Maintenant, l'étape 2 :
Pour organiser le choix du fichier, il y a plusieurs solutions technique (dont j'ignore le détail !).

Maintenant, si tu donnais plus de détail à ce sujet, la solution sera d'autant plus adaptée.

Par exemple, si les noms des fichiers et leur emplacement sont connus, ou si tu dois appliquer la procédure à tous les fichiers d'un répertoire, ou si les noms de fichiers sont dans une liste quelque part, ou si tu prend des fichiers au hasard, etc...

Suivant tes indications, il sera question de macro événementielle, d'userform, d'inputbox, de récupérer l'adresse dans une cellule, etc

Donc, à plus...
 
S

Steph

Guest
Bonjour à tous,

Voici quelques pércisions concernant cette opération. Les fichiers texte à importer seront à différents emplacements sur le disque et auront des noms différents.

Je pense que le mieux serait d'avoir une petite fenetre ou un espace texte où l'on entre le chemin du fichier. Une macro pourrait copier ceci et le coller directement dans la macro d'importation. Ceci permettrait de choisir le fichier à importer et de conserver les valeurs périphériques.

Le problème est que je ne sais pas du tout commencer générer ça.

Avis aux experts...

Steph
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…