Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/10/2011, 11h22   #1
Membre du Club
 
Inscription : janvier 2005
Messages : 230
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 230
Points : 43
Points : 43
Par défaut Import et conversion d'un fichier texte

Bonjour a tous,

J'ai des données qui proviennent d'un fichier texte avec comme séparateur des tabulations.

Au début de ma procédure j'ouvre une boite de dialogue pour rechercher le fichier texte si il n'as pas été trouver dans le répertoire de travail.

Code :
1
2
3
4
5
6
ChDir RepTravail 
fichier = Dir("") 
If fichier = "" Then
Application.Dialogs(xlDialogFindFile).Show
fichier = ActiveWorkbook.Name
Origine = ActiveWorkbook.FullName
Jusque là tout marche nickel (pour une fois )

Je me pose la question si il est possible d'avoir directement dans "types de fichiers" de la boite de dialogue le format *.txt proposer par défaut au lieu de *.xlsx ce qui me farai une manipulation en moins et un gain de temps

Après je me demande comment ( et si c'est possible ) d'éliminé la boite de dialogue pour la convertion du TXT en XLS. Sachant que les délimiteurs seront toujours des Tabulations. Car lorsque je clique sur ouvrir de la boite de dialogue et avant toute autre exécution du code j'ai la boite de conversion qui apparait.

Merci par avance pour votre aide
stefano est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/10/2011, 11h42   #2
Membre éclairé
 
Avatar de Nako_lito
 
Développeur .NET
Inscription : mai 2008
Messages : 561
Détails du profil
Informations professionnelles :
Activité : Développeur .NET

Informations forums :
Inscription : mai 2008
Messages : 561
Points : 390
Points : 390
salut,

je pense que tu trouvera ton bonheur par ici
__________________
- La dernière fois que j'ai testé ca fonctionnait !
- Vous n'avez rien modifié ?
- Non ! Je suis pas idiot non plus.
- ....
- Enfin si, juste le fichier .dll, mais a 4Ko, ca devait pas être important.
Nako_lito est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/10/2011, 16h03   #3
Membre du Club
 
Inscription : janvier 2005
Messages : 230
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 230
Points : 43
Points : 43
ok je te remercie pour le lien, je suis passé a coté de celui là.

Je vais voir si je trouve mon bonheur dedans
stefano est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2011, 02h26   #4
Expert Confirmé
 
Homme Philippe
ex Observeur CGG / Analyste prog.
Inscription : juin 2006
Messages : 1 707
Détails du profil
Informations personnelles :
Nom : Homme Philippe
Localisation : France, Finistère (Bretagne)

Informations professionnelles :
Activité : ex Observeur CGG / Analyste prog.

Informations forums :
Inscription : juin 2006
Messages : 1 707
Points : 3 629
Points : 3 629
Salut, voir également http://www.developpez.net/forums/d11...xcel-possible/
__________________
Pensez à Voter, d'avance merci. ( Pouces en bas à la droite de Citer )
Balisez votre code après l'avoir indenté sous Excel via Smart Indenter
Autre utilitaire : MZ Tools 3.0 VBA

Contribution : Excel / Word / PDF avec Adobe Acrobat Pro / PDFCreator 1 2
kiki29 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/10/2011, 09h15   #5
Membre éclairé
 
Avatar de Nako_lito
 
Développeur .NET
Inscription : mai 2008
Messages : 561
Détails du profil
Informations professionnelles :
Activité : Développeur .NET

Informations forums :
Inscription : mai 2008
Messages : 561
Points : 390
Points : 390
Citation:
Envoyé par stefano Voir le message
Bonjour a tous,

Code :
1
2
3
4
5
6
ChDir RepTravail 
fichier = Dir("") 
If fichier = "" Then
Application.Dialogs(xlDialogFindFile).Show
fichier = ActiveWorkbook.Name
Origine = ActiveWorkbook.FullName
Merci par avance pour votre aide
Fais attention avec la méthode Activeworkbook, car elle se base sur le formulaire actif et pas forcement sur le formulaire qui exécute le programme. Du coup tu risque de te retrouver avec des données dans des classeurs qui ne vont pas du tout.
Préfère une méthode genre Thisworkbook ou Workbook(leNomDeMonFichier).

De plus le test que tu effectue est inutile car dans tous les cas ton test sera positif vu que tu initialise la variable testée juste avant le if (a moins qu'il n'y ai pas tout le code).
__________________
- La dernière fois que j'ai testé ca fonctionnait !
- Vous n'avez rien modifié ?
- Non ! Je suis pas idiot non plus.
- ....
- Enfin si, juste le fichier .dll, mais a 4Ko, ca devait pas être important.
Nako_lito est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h34.


 
 
 
 
Partenaires

Hébergement Web