Erreur d'exécution '1004': la méthode 'Range' de l'objet'_Gl
Résolu
Barbo_14
-
Barbo_14 -
Barbo_14 -
A voir également:
- Excel erreur d'exécution 1004 la méthode range de l'objet
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Comment calculer la moyenne sur excel - Guide
- Aller à la ligne excel - Guide
- Déplacer colonne excel - Guide
4 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
il manque probablement une zone nommée "Données" dans le nouveau classeur.
Bonjour,
Merci pour votre réponse. Mais j'ai une feuille nommé "Données" parmi d'autres feuilles
d'où ma confusion.
De plus, je ne suis pas très à l'aise avec le code VBA..
Bonjour Barbo_14
Voici le code optimisé tel que je l'ai compris
Sub Export_csv()
Dim Wbk As Workbook
Dim Nom As String
' Désactiver le rafraichissement
Application.ScreenUpdating = False
' Nom du futur classeur csv
Nom = Workbooks(ActiveWorkbook.Name).FullName
Nom = Left(Nom, Len(Nom) - 5) & "_" & Year(Date) & Month(Date) & Day(Date)
' Définir ce classeur
St Wbk = ActiveWorkbook
' Déprotéger le classeur
Wbk.Unprotect Password:="sprs-al8"
' Avec la feuille "Données"
With Wbk.Worksheets("Données")
' La rendre visible
.Visible = xlSheetVisible
' La déprotégée
.Unprotect Password:="sprs-al8"
' Copier la feuille dans un nouveau classeur
.Copy
End With
' Avec le nouveau classeur
With ActiveWorkbook
' Sauvegarder sou le nom définit
.SaveAs Filename:=Nom & ".csv", FileFormat:=xlCSV, CreateBackup:=False
' Le fermer
.Close SaveChanges:=False
End With
' Avec la feuille "Données"
With Wbk.Worksheets("Données")
' Protéger la feuille
.Protect Password:="sprs-al8"
' La rendre invisible
.Visible = xlSheetHidden
End With
' Protéger le classeur
Wbk.Protect Password:="sprs-al8"
Set Wbk = Nothing
' Petit message
MsgBox ("Le fichier au format .csv a été enregisté sous : " & Workbooks(ActiveWorkbook.Name).Path)
' réactiver le rafraichissement
Application.ScreenUpdating = True
End Sub
A+