Sly le globe trotter
XLDnaute Occasionnel
Bonsoir,
A partir d'un fichier Excel, je cherche à copier l'un des onglets de ce fichier, supprimer le code de cet onglet, remplacer le contenu des cellules par leurs valeurs avant de finalement enregistrer le fichier.
J'ai pour cela écrit le code suivant
Malheureusement, cela ne fonctionne pas... Le code plante sur la ligne
avec le message suivant
"Erreur de compilation : End Sub attendu"
A priori, cela proviendrait de la fonction Worksheet_Change présente dans le code de l'onglet que je cherche à copier. Si je mets cette fonction en commentaires, tout fonctionne...
Auriez-vous une idée pour contourner / corriger cette erreur ?
D'avance merci pour votre aide,
Sly
A partir d'un fichier Excel, je cherche à copier l'un des onglets de ce fichier, supprimer le code de cet onglet, remplacer le contenu des cellules par leurs valeurs avant de finalement enregistrer le fichier.
J'ai pour cela écrit le code suivant
Code:
Sheets("DataSérie").Copy
Set gCopy = ActiveWorkbook
Set fCopy = ActiveWorkbook.Sheets("DataSérie")
' Suppression du code
With gCopy.VBProject.VBComponents(Sheets("DataSérie").CodeName).CodeModule
.DeleteLines 1, .CountOfLines
End With
' Remplacement du contenu des cellules par leurs valeurs
With fCopy.UsedRange
.Value = .Value
End With
Malheureusement, cela ne fonctionne pas... Le code plante sur la ligne
Code:
.Value = .Value
"Erreur de compilation : End Sub attendu"
A priori, cela proviendrait de la fonction Worksheet_Change présente dans le code de l'onglet que je cherche à copier. Si je mets cette fonction en commentaires, tout fonctionne...
Auriez-vous une idée pour contourner / corriger cette erreur ?
D'avance merci pour votre aide,
Sly
Dernière édition: