import et close, ou bien extraire nom de fichier

  • Initiateur de la discussion Initiateur de la discussion tom
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

T

tom

Guest
Bonjour à tous,

Un classeur 'source' contient des données brutes, le classeur 'traitement.xls' renferme un tas de macros pour trier, dédoublonner, compter, statistiquer, etc...

Pour importer le 'source', je cherche son adresse avec 'Application.GetOpenFilename', je stocke le chemin dans une cellule dont le NOM=openit, puis j'exécute 'Application.GetOpenFilename' pour l'ouvrir.
Je copie-colle, mais là j'ai un soucis pour refermer le source. Ma macro d'import est la suivante :



Sub Import()

Dim openit As String

Workbooks.Open Filename:=Range('openit')
Range('A1').Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Windows('Traitement.xls').Activate
Range('A15').Select
ActiveSheet.Paste
Windows(openit).Close

End Sub

Filename donne le chemin en entier, hors il me semble que Windows(blabla).Close a juste besoin du nom de fichier (nom+extension). Comment l'extraire ? Y-a-t-il un autre moyen + simple ??

Tom
 
extraire nom de fichier

Re-Bonjour,
le plus simple me semble d'extraire les caractères correspondant au nom de fichier, mais je ne sais pas comment faire...
Le nombre de caractères du chemin peut varier, la longueur du nom de fichier aussi, l'extension peut changer...
Il idéalement il faudrait que je puisse extraire ce qui est après le dernier '\\'.
Tom
 
Re:extraire nom de fichier

bonjour Tom

je n'ai pas testé ta macro mais pour refermer le classeur tu pourrais utiliser cette methode


Dim Wb As Workbook
Set Wb = Workbooks.Open(Filename:=Range('openit'))

Range('A1').Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Windows('Traitement.xls').Activate
Range('A15').Select
ActiveSheet.Paste
Wb.Close



bonne journee
MichelXld
 
Re:extraire nom de fichier

🙂 merci MichelXld,
Ca fonctionne à merveille. Il me reste beaucoup de chose à apprendre en VB... En tout cas ce forum est une mine d'or, grâce aux personnes qui passent du temps à lire, comprendre et résoudre nos petits tracas avec simplicité et rapidité.
tom
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
3
Affichages
535
Réponses
0
Affichages
627
Retour