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

Importer feuille depuis un classeur dont le nom commence par 73

  • Initiateur de la discussion Initiateur de la discussion Francois73
  • 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 !

Francois73

XLDnaute Occasionnel
bonjour le forum

encore un petit soucis , je cherche un importer des feuilles (d(un classeur B) depuis un classeur A
le nom du classeur B change car il est issu d'une macro qui me le crée, le seul élément fixe dans le nom ce sont les deux premiers caracrères qui sont "73"

merci de votre aide
 
Re : Importer feuille depuis un classeur dont le nom commence par 73

Bonjour Francois73
Bonjour le Fil
Bonjour Le Forum
peut être en mettant dans la boucle de recherche via le Nom un truc du Genre :
Pour Chaque Classeur du Dossier , Si le Nom Contient 73 et des Lettres derrières Soit
If WorkBook.Name Like "73*" Then
pas facile sans Fichier ......
Bonne Journée
Amicalement
Jean Marie
 
Dernière édition:
Re : Importer feuille depuis un classeur dont le nom commence par 73

j'ai oublié de spécifier que le classeur A et le classeur b(commençant par 73) sont dans le même dossier et que dans ce dossier il n'y a qu'un seul classeur b , mais comme préciser auparavant je ne peux pas connaitre son nom à l'avance sauf qu'il commence par 73

merci
 
Re : Importer feuille depuis un classeur dont le nom commence par 73

j'ai tenté sans avoir réussi, j'ai récupérer un bout de code que j'ai tenté d'adapter mais cela ne fonctionne pas

Sub Macro1()
'
' Macro1 Macro
'
Dim SourceWkb As Workbook, DestWkb As Workbook, Ws As Worksheet
Set DestWkb = ThisWorkbook
If Workbook.Name Like "73*" Then
Set SourceWkb = Workbooks.Open(Filename:="C:\Users\courbois_f\Documents\ECRITURE EXCEL LACTO\derniere version") 'On ouvre le fichier source
' On copie les feuilles du fichier source
For Each Ws In SourceWkb.Worksheets
Ws.Copy after:=DestWkb.Worksheets(DestWkb.Worksheets.Count)
Next
SourceWkb.Close False
End If
End Sub

merci de votre aide
 
Re : Importer feuille depuis un classeur dont le nom commence par 73

bonjour le forum
j'ai réussi à ouvrir le fameux fichier qui commence par 73, j'en importe une feuille jusque là tout va bien
par contre j'aimerais qu'une fois cette opération terminée la macro me ferme ce fichier commençant par 73

dans mon code c'est la ligne
wb.close qui coince

ci dessous mon code
Sub copicheptel()
'

'
Workbooks.Open Filename:= _
ThisWorkbook.Path & "\" & Dir(ThisWorkbook.Path & "\" & "73*")
Sheets("cheptel").Select
Sheets("cheptel").Copy After:=Workbooks( _
"modele tri aprés contrôle siegev4.xlsm").Sheets(1)
Sheets("cheptel").Select
Range("A1").Select
wb.Close
End Sub

je joints les fichier
avec fichier contenant la macro d'importation ("modele tri après contrôle v4)
et le fichier dans lequel je vais chercher la feuille ( 73112007 15052013)

merci de votre aide
 

Pièces jointes

Re : Importer feuille depuis un classeur dont le nom commence par 73

j'ai trouvé

voici le code pour celui que ça intéresse

Sub fermer73()
Dim fi As Workbook 'déclare la variable fi (FIchhier)

For Each fi In Workbooks 'boucle sur tous les fichiers ouverts
'si les 2 premières lettre du nom du fichier (converties en majuscule) = "73". ferme le fichier
If UCase(Left(fi.Name, 2)) = "73" Then fi.Close
Next fi 'prochain fichier de la boucle
End Sub

merci
 
Re : Importer feuille depuis un classeur dont le nom commence par 73

Bonjour Francois73
Bonjour le fil
Bonjour le forum

on pourrait aussi faire ainsi
VB:
Sub copicheptel()
Dim Wb As Workbook
Application.ScreenUpdating = False
'
Set Wb = Workbooks.Open(Filename:= _
ThisWorkbook.Path & "\" & Dir(ThisWorkbook.Path & "\" & "73*")) 'on affecte le Fichier trouvé dans la variable
With Sheets("cheptel")  'avec la feuille ""cheptel"" de ce fichier
.Activate 'on active la feuille ""cheptel"" de ce fichier
.Copy After:=Workbooks( _
"modele tri aprés contrôle siegev4.xlsm").Sheets(1) 'on la copie apres la feuille 1
End With
Wb.Close
ActiveSheet.Range("A1").Select 'on selectionne la cellule A1
Application.ScreenUpdating = True
End Sub

j'ai modifié la procédure j'ai mis (Ws en Wb)
Bonne journée
Amicalement
Jean Marie
 
Dernière édition:
- 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

Discussions similaires

F
Réponses
1
Affichages
514
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…