ErreurExecutionMacroSelonLancement

M

Moa

Guest
Re à tous

Voilà :

Chose Incompréhensible.

J'ai fait une macro assez longue (sélection de feuilles, copier / coller, renommer etc..), que j'ai appellée "Finale"

Si je la lance, avec le menu macro / exécuter, elle fonctionne parfaitement.

J'ai mis un bouton de commande sur ma feuille, et j'ai écrit :

Call Finale

Quand, je la lance avec ce bouton, elle fonctionne tout aussi bien.

Et maintenant, j'ai fait un copier ce cette macro, que je colle à la place de

Call Finale.


Donc, en théorie, cela devrait marcher...!!! Et bien non...!!Arrivé, au milieu de la macro, erreur .

J'ai refait cette opréation plus de 5 fois, et toujours une erreur.

Il faut savoir, que j'ai fait la même opération, avec dix autres boutons, et que cela fonctionne à merveille.

Donc, Incompréhensible, pour moi.

Si qqn à une explication à ce phénomène....ou si cette "choses" est déjà arrivé à qqn, ce serait vraiment sympa de me rancarder.


Pour les personnes ne pouvant pas télécharger les fichiers joints, ci-dessous, la macro en question:

Sub Finale()
'
' Finale Macro
' Macro enregistrée le 13.12.2002 par Robin
'
Sheets("FeuilleDeTravail").Visible = True

Sheets("Base").Visible = True

Sheets(Array("FeuilleDeTravail", "Base")).Select
Sheets("FeuilleDeTravail").Activate
Sheets(Array("FeuilleDeTravail", "Base")).Copy

Sheets("FeuilleDeTravail").Select
ActiveSheet.Unprotect

voilà l'endroit où se bloque la macro

Range("A3:AT31").Select
Selection.Copy

Range("A3:G15").Select
Application.CutCopyMode = False
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False

Range("B17").Select
Application.CutCopyMode = False
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False

Range("A19:G31").Select
Application.CutCopyMode = False
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False

Sheets("Base").Select
ActiveSheet.Unprotect

Range("A3:AN15").Select
Application.CutCopyMode = False
Selection.Copy

Range("A3").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False

Range("B2").Select
Selection.Copy
Range("B2").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False

Range("A19:G31").Select
Application.CutCopyMode = False
Selection.Copy
Range("A19").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False

Range("B17").Select
Application.CutCopyMode = False
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False



' Macro enregistrée le 25.11.2002 par Robin
' Renomme Feuille "Base" "En Nx"

Sheets("Base").Select
Sheets("Base").Name = Range("B2").Value

' Renomme Feuille "FeuilleDeTravail" en "Nx" + "A"
Sheets("FeuilleDeTravail").Select
Sheets("FeuilleDeTravail").Name = Range("B2").Value & "A"
'

'Sauvegarde du classeur sous le nom "Nx", écrit dans la cellule B2 de la feuille "FeuilleDeTravail"
Sheets(2).Select
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Range("B2").Value
Application.DisplayAlerts = True

'Masque "Feuille base et FeuilleDeTravaille", du classeur
'd'origine
Windows("FootComp02-03.xls").Activate
Sheets("base").Visible = False
Sheets("FeuilleDeTravail").Visible = False

' Ferme le classeur
Windows("FootComp02-03.xls").Activate
Application.DisplayAlerts = False
ActiveWorkbook.Close
Application.DisplayAlerts = True


End Sub

Merci de votre aide.

@ +

Moa
 

Fichiers joints

V

Valérie

Guest
Slt Moa

Je dirai que le pb viens du fait que tu cherches à travailler sur une autre feuille que celle du bouton!! Pour simplifier ma tâche j'ai réduit le code mais tu devrais t'y retrouver et concrétement il faut le nom de la feuille devant tes Range(...)

Sub Finale()
'
' Finale Macro
' Macro enregistrée le 13.12.2002 par Robin
'
Sheets("FeuilleDeTravail").Visible = True
Sheets("Base").Visible = True
Sheets(Array("FeuilleDeTravail", "Base")).Select

With Sheets("FeuilleDeTravail")
.Activate
.Unprotect
'voilà l 'endroit où se bloque la macro
COPIEU_COLLEU .Range("A3:G15")
COPIEU_COLLEU .Range("B17")
COPIEU_COLLEU .Range("A19:G31")
End With

With Sheets("Base")
.Select
.Unprotect

COPIEU_COLLEU .Range("A3:AN15")
COPIEU_COLLEU .Range("B2")
COPIEU_COLLEU .Range("A19:G31")
COPIEU_COLLEU .Range("B17")
End With

' Macro enregistrée le 25.11.2002 par Robin
' Renomme Feuille "Base" "En Nx"

Sheets("Base").Name = Range("B2").Value

' Renomme Feuille "FeuilleDeTravail" en "Nx" + "A"
Sheets("FeuilleDeTravail").Name = Range("B2").Value & "A"
'
'Sauvegarde du classeur sous le nom "Nx", écrit dans la cellule B2 de la feuille "FeuilleDeTravail"
Sheets(2).Select
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Range("B2").Value
Application.DisplayAlerts = True

'Masque "Feuille base et FeuilleDeTravaille", du classeur
'd'origine
Windows("FootComp02-03.xls").Activate
Sheets("base").Visible = False
Sheets("FeuilleDeTravail").Visible = False

' Ferme le classeur
Windows("FootComp02-03.xls").Activate
Application.DisplayAlerts = False
ActiveWorkbook.Close
Application.DisplayAlerts = True


End Sub


Sub COPIEU_COLLEU(Cellules As Range)
Cellules.Copy
Cellules.PasteSpecial Paste:=xlValues
Application.CutCopyMode = False
End Sub
 
Haut Bas