Ouverture de plusieurs fichiers

sokour

XLDnaute Occasionnel
Bonjour,

J’ai créé un fichier qui dispose de boutons qui permettent d’ouvrir les fichier et un fichier open qui permet de démarrer l’ouverture de tous les fichiers concernant les boutons sélectionné et copie la valeur de la cellule E4 dans la cellule E4 de tous les fichiers ouverts.

Le problème est comment dire à la macro ouvrir seulement les fichiers dont le bouton a été sélectionner (toggle bouton)

Ci-joint un fichier exemple.

Merci de votre aide
 

Pièces jointes

  • Exemple.xls
    19 KB · Affichages: 51
  • Exemple.xls
    19 KB · Affichages: 40
  • Exemple.xls
    19 KB · Affichages: 41

jp14

XLDnaute Barbatruc
Re : Ouverture de plusieurs fichiers

Bonjour

Ci dessous un exemple de macro

Code:
Public Wbk1 As Workbook ' a mettre dans un module
Public Wbk2 As Workbook
Public Wbk3 As Workbook
Private Sub CommandButton1_Click()
If ToggleButton1.Value = True Then
    Set Wbk2 = Workbooks.Open(Filename:="exemple.xls")
End If
End Sub

Concernant la copie il faut connaitre le nom de la feuille.
A tester et à modifier

JP
 
Dernière édition:

jp14

XLDnaute Barbatruc
Re : Ouverture de plusieurs fichiers

Bonjour

Ci dessous un exemple pour copier

Code:
Private Sub CommandButton1_Click()
Set Wbk1 = ThisWorkbook
If ToggleButton1.Value = True Then
    Set Wbk2 = Workbooks.Open(Filename:="exemple.xls")
End If
On Error Resume Next

Wbk2.Sheets("Feuil1").Range("e4") = Wbk1.Sheets("Sheet1").Range("e4")
Wbk1.Activate
End Sub


Private Sub ToggleButton1_Click()
If ToggleButton1.Value = False Then
On Error Resume Next
Wbk2.save
Wbk2.Close
End If
End Sub

J'ai rajouté la macro pour fermer le fichier

JP
 

sokour

XLDnaute Occasionnel
Re : Ouverture de plusieurs fichiers

Voici le debut du code :

sub ouvrir
Set Wbk0 = ThisWorkbook

If ToggleButton1.Value = True Then
Set Wbk1 = Workbooks.Open(Filename:="T:\Lit.xls")
End If
On Error Resume Next
Wbk1.Sheets("Main").Range("I6") = Wbk0.Sheets("Sheet1").Range("e4")


If ToggleButton2.Value = True Then
Set Wbk2 = Workbooks.Open(Filename:="T:\papier.xls")
End If
On Error Resume Next
Wbk2.Sheets("Main").Range("I6") = Wbk0.Sheets("Sheet1").Range("e4")


If ToggleButton3.Value = True Then
Set Wbk3 = Workbooks.Open(Filename:="T:\Carton.xls")
End If
On Error Resume Next
Wbk3.Sheets("Main").Range("l6") = Wbk0.Sheets("Sheet1").Range("e4")
end sub

Le code continue car il y a en tout 20 toggle bouton

Merci
 

jp14

XLDnaute Barbatruc
Re : Ouverture de plusieurs fichiers

Bonjour sokour

Le code me semble correct.

Il faudrait rajouter
Code:
On Error Resume Next
Wbk1.Sheets("Main").Range("I6") = Wbk0.Sheets("Sheet1").Range("e4")
[COLOR="Red"]on error goto 0[/COLOR]

Ce qui permettrait de voir si on a une erreur.
S'il n'y a pas d'erreur il faut se positionner dans la procédure et utiliser F8 et avancer en pas à pas en vérifiant les instructions.

JP
 

Discussions similaires

Réponses
8
Affichages
241

Statistiques des forums

Discussions
312 336
Messages
2 087 388
Membres
103 534
dernier inscrit
Kalamymustapha