aubelix
XLDnaute Impliqué
Bonjour à tous les amis du Forum. 🙂
A partir d'un modèle, je duplique autant de fois le modèle pour le renommer
onglet au nom de x références variables..
J'ai une rerreur aléatoire et le message ci-dessous s'affiche :
Erreur d'exécution 1004
La méthode Copy de la Classe Worksheet a échoué.
Ci-dessous la macro qui s'arrête sur:
Sheets("MODELE").Copy After:=Sheets(Sheets.Count)
Merci pour votre aide.
Cordialment.
A partir d'un modèle, je duplique autant de fois le modèle pour le renommer
onglet au nom de x références variables..
J'ai une rerreur aléatoire et le message ci-dessous s'affiche :
Erreur d'exécution 1004
La méthode Copy de la Classe Worksheet a échoué.
Ci-dessous la macro qui s'arrête sur:
Sheets("MODELE").Copy After:=Sheets(Sheets.Count)
Code:
Sub creation_FICHES()
Dim sh As Worksheet
Dim cel As Range, plg As Range
Select Case MsgBox(" Voulez-vous lancer la création des FICHES " _
& vbCrLf & " (une feuille par REFERENCE)" _
, vbYesNo Or vbQuestion Or vbDefaultButton1, "Confirmation")
Case vbYes
Sheets("BASE").Range("B2").Select
' Set plg = Range(Selection, Selection.End(xlDown))
Set plg = Range("B2:B" & Range("B65536").End(xlUp).Row)
Application.ScreenUpdating = False
For Each cel In plg.Cells
If cel <> "" Then
For Each sh In Worksheets
If sh.Name = cel Then GoTo suite
Next
Sheets("MODELE").Copy After:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = cel.Value
'Recopie les différentes rubriques spécifiées
With Sheets(Sheets.Count)
'Numéro identification
.Range("C12").Value = Sheets("BASE").Range("E" & cel.Row).Value
'Référence
.Range("H12").Value = Sheets("BASE").Range("B" & cel.Row).Value
'Responsable
.Range("J2").Value = Sheets("BASE").Range("E" & cel.Row).Value
'Numéro d'ordre
.Range("J4").Value = Sheets("BASE").Range("C" & cel.Row).Value
End With
End If
suite:
Next
Call MsgBox(" Toutes les FICHES ont été crées avec succes " _
& vbCrLf & " Pour accéder à la FICHE de votre choix" _
& vbCrLf & " Tapez : Ctrl + M" _
, vbInformation, "CTRL + M")
Case vbNo
Exit Sub
End Select
Sheets("BASE").Activate
End Sub
Merci pour votre aide.
Cordialment.