Bonjour @ tous
une pitite question VB:
- j'ai plusieurs classeurs ouverts
- j'ai ecrit des tas de macro que je vais executer les unes apres les autres
- la premier commence par
Workbooks.Add
Sheets("Feuil1").Select
Sheets("Feuil1").Name = "DATA"
et ainsi de suite, j'ajoute quarante-douze feuilles...
- puis je fais un tas de manip (mise en forme, copier coller, trier...) sur chacune des feuilles du classeur creer (qui s'appelle donc "classeur1" si et seulement si c'est le premier classeur que tu cree depuis l'ouverture d'excel
> > > et la mon soucis:
toutes mes macros se referent a "classeur1" puisqu'elles sont destinees a etre exe au meme moment par l'utilisateur
exemple de macro:
Sub copy_paste_from_database()
Dim Retour As Integer
Retour = MsgBox("Are you sure Final_Base_Gymnasiade_2009.xls is open ?", vbYesNo + vbCritical + vbDefaultButton2)
If Retour = vbYes Then
'
Windows("Final_Base_Gymnasiade_2009.xls").Activate
Range("B1:AS2500").Select
Selection.Copy
Windows("Classeur1").Activate
Range("a1").Select
ActiveSheet.Paste
Range("a1").Select
MsgBox ("Copy from database COMPLETED"), vbOKOnly, "Theodore"
MsgBox ("Please make sure you close Final_Base_Gymnasiade_2009.xls"), vbOKOnly + vbInformation, "Theodore"
End If
End Sub
mais si cette personne avait deja creer un classeur, alors tous les codes ne marchent plus
d'ou ma question:
qu'elle est la facon de qualifier un classeur autrement que par son nom ou encore "activeworkbook"
j'ai essayer "lastactiveworkbook" ca marche pas.
sa qualification, en fait est: "dernier classeur creer"
Merci a tous ! ! !