[Résolu] Macro et erreur 1004

Baskets

XLDnaute Nouveau
Bonsoir à tous,

comme je n'y connais absolument rien en VBA, j'ai enregistré une macro, plutôt que de l'écrire.
A son exécution, cette macro, Excel m'affiche une erreur 1004 "Erreur définie par l'application ou par objet.

Voici la ma macro en question:

Sub Préparer_feuille_Travail()
'
' Préparer_feuille_Travail Macro
'

'
Sheets("Travail").Select
ActiveSheet.Unprotect
ActiveWindow.SmallScroll Down:=18
Rows("50:58").Select
Selection.EntireRow.Hidden = False
Range("E57").Select
ActiveCell.FormulaR1C1 = "1"
Rows("51:57").Select
Selection.EntireRow.Hidden = True
ActiveWindow.SmallScroll Down:=-36
Range("A1").Select
Selection.ClearContents
ActiveCell.FormulaR1C1 = "=YEAR(TODAY())"
ActiveSheet.Shapes.Range(Array("Button 3")).Select
Selection.Characters.Text = "Prêt"
With Selection.Characters(Start:=1, Length:=4).Font
.Name = "Arial"
.FontStyle = "Normal"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
Range("AG24").Select
ActiveSheet.Shapes.Range(Array("Button 3")).Select
With Selection.Font
.Name = "Arial"
.FontStyle = "Normal"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 50
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
Range("A1").Select
Sheets("Travail").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

La ligne en rouge est celle qui est mise en surbrillance dans le débogueur.

Merci par avance de votre aide au sujet de mon petit problème.
 
Dernière édition:

Hulk

XLDnaute Barbatruc
Re : Macro et erreur 1004

Hello Baskets, Forum :),

Juste "épuré" un peu ton code, recopie-le et teste voir ce qu'il dit...
Code:
Sub Préparer_feuille_Travail()
'
' Préparer_feuille_Travail Macro
'

'

    Application.ScreenUpdating = False
    
    Sheets("Travail").Select
    ActiveSheet.Unprotect
    Rows("50:58").EntireRow.Hidden = False
    Range("E57").Value = "1"
    Rows("51:57").EntireRow.Hidden = True
    Range("A1").FormulaR1C1 = "=YEAR(TODAY())"
    
    ActiveSheet.Shapes.Range(Array("Button 3")).Characters.Text = "Prêt"
    
    '=====================================================================
    '=====================================================================
    'Tout ce qui il a entre les lignes === me paraît facultatif.
    'Faut que tu essaies en les mettant un par un en commentaire voir ce qu'il fait.
    
    With Selection.Characters(Start:=1, Length:=4).Font
        .Name = "Arial"
        .FontStyle = "Normal"
        .Size = 10
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ColorIndex = 3
    End With

    Range("AG24").Select
    ActiveSheet.Shapes.Range(Array("Button 3")).Select

    With Selection.Font
        .Name = "Arial"
        .FontStyle = "Normal"
        .Size = 10
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ColorIndex = 50
        '.TintAndShade = 0
        .ThemeFont = xlThemeFontNone
    End With
    
    '=====================================================================
    '=====================================================================

    Range("A1").Select
    
    Sheets("Travail").Select

    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
    
    Application.ScreenUpdating = True

End Sub
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 177
Messages
2 085 972
Membres
103 073
dernier inscrit
MSCHOE16