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

bbobb

XLDnaute Occasionnel
Bonsoir le forum,
Par macro, j'ouvre un fichier en fonction de sa date. Ensuite je dois revenir dessus plusieurs fois pour y récupérer des infos. Actuellement je le ferme et l'ouvre à chaque fois... je ne trouve pas le code pour l'activer tout simplement...
Ci-dessous l'extrait de la marco...

Merci d'avance pour votre aide
Bbobb

Nom_fic = "C:\Users\Pascal\Desktop\Macro ch p 2010\Test CRT auto\Test macro web CRT\ACT001_" & Valannee & "." & ValMois & "." & Valjour & ".*.xls"

Workbooks.OpenText Filename:=Nom_fic 'ouverture du fichier
'chercher nombre de transaction en espèces
Dim Est As Range, Col As Byte, CaG As Single
Set Est = Cells.Find("Espèces")
If Est Is Nothing Then
CaG = 0
Else
Col = Est.Column
Set Est = Cells.Find("Total Nb paiements")
CaG = Cells(Est.Row, Col)
End If
Cells(Est.Row, Col).Select
ActiveWindow.Close 'fermeture du fichier
Workbooks("Chiffre d'affaire global.xls").Activate 'fichier ouvert
ActiveSheet.Cells(6, col_date) = CaG 'ou ailleurs

Workbooks.OpenText Filename:=Nom_fic 'reouverture du fichier
 
Re : Activation fichier

Bonsoir bbobb
la simple commande Activate activera ton classeur,puis "activate" sur un autre sans "close" , t'afichera le classeur voulu.
Tu peux ouvrir plusieurs classeur sans les fermer.

Workbooks("Chiffre d'affaire global.xls").Activate 'fichier ouvert

Cordialement
 
Re : Activation fichier

Bonsoir néné06,
Pas de soucis pour activer "Chiffre d'affaire global.xls", le problème c'est pour activer "Workbooks.OpenText Filename:=Nom_fic"...
J'ai essayé "Workbooks("Nom_fic").Activate" mais cela ne fonctionne pas...

Une autre idée ?
Merci
Bonne soirée
Bbobb
 
Activation classeur déja ouvert

Bonsoir le forum,
Suite au conseil avisé de néné06
j'ai donc joint un fichier.

Donc dans la macro, j'ouvre des fichier par la commande :
Nom_fic1 = "C:\Users\...\ACT001_" & Valannee & "." & Valmois & "." & Valjour & ".*.xls"

Je dois revenir sur ce fichier plusieurs fois sans le fermer mais à la commande :
Workbooks.OpenText Filename:=Nom_fic1
j'ai le message suivant : le fichier est déja ouvert, si vous l'ouvrez à nouveau les données seront perdues...

En fait il suffirait de l'activer mais je ne trouve pas le code : AU SECOURS !!!!!!

Merci d'avance pour votre aide
Bbobb
 

Pièces jointes

Dernière édition:
Re : Activation fichier

Bonjour,

petite question idiote, pourquoi utiliser la méthode "OpenTexte", plutôt que la méthode "open" s'agissant de fichier xls.... perso utiliserais une variable objet, comme dans l'exemple ci-dessous :
Code:
Dim wb As Workbook
Nom_fic1 = "C:\Users\Pascal\Desktop\Macro ch p 2010\Test CRT auto\Test macro web CRT\ACT001_" & Valannee & "." & Valmois & "." & Valjour & ".*.xls"
Set wb = Workbooks.Open(Nom_fic1)

ensuite partout dans ton code, lorsque tu veux intervenir sur ce classeur tu fais référence à cette variable...
Code:
wb.Activate

bonne journée
@+
 
Re : Activation fichier

Bonjour Pierrot,
Ta solution fonctionne très bien... à un détail près : le * après " & Valjour & ". Il s'agit d'une variable que je ne connais pas à l'avance. J'ai fait un test sur un fichier connu en entrant la bonne valeur : ça fonctionne.
Je ne sais pas comment résoudre ce problème...

Bonne soirée
Bbobb
 
Re : Activation fichier

re,

essaye peut être ainsi :
Code:
Nom_fic1 = Dir("C:\Users\Pascal\Desktop\Macro ch p 2010\Test CRT auto\Test macro web CRT\ACT001_" & Valannee & "." & Valmois & "." & Valjour & ".*.xls")
if Nom_fic1 = "" then exit sub 
Set wb = Workbooks.Open(Nom_fic1)

bonne soirée
@+
 
Re : Activation fichier

bonsoir Pierrot,
Je ne comprend pas, le code fonctionne, lorsque je pose la souris sur If Nom_fic1 = "" Then le fichier est bien identifié, j'ai vérifié que le chemin d'accès est correct, mais à l'éxecution une fenêtre erreur d'éxécution 1004 apparait :'ACT001_2011.04.02.050013.xls' est introuvable.
Je joint les 2 fichiers si cela peut aider...

Merci
Bbobb
 

Pièces jointes

Re : Activation fichier

Bonjour,

essaye comme ceci :
Code:
Dim chemin As String, Nom_fic1 As String
chemin = "C:\Users\Pascal\Desktop\Macro ch p 2010\Test CRT auto\Test macro web CRT\"
Nom_fic1 = Dir(chemin & "ACT001_" & Valannee & "." & Valmois & "." & Valjour & ".*.xls")
If Nom_fic1 = "" Then Exit Sub
Set wb = Workbooks.Open(chemin & Nom_fic1)

bonne journée
@+
 
Re : Activation fichier

Bonjour Pierrot
Merci encore pur ton aide précieuse...
Ta dernière solution semble fonctionner. Je teste sur le fichier "grandeur nature" et reviens vers le forum pour cloturer le post ou re-crier au secours...
Bonne journée
Bbobb
 
- 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
Retour