Problème vba

Bonjour,

J'ai une macro très simple en VBA sur Excel qui ne veut pas s'exécuter:
Erreur d'exécution '1004';
Erreur définie par l'application ou par l'objet

Voici le code:
Sub droite_haut()
'
' droite_haut Macro
'
Feuil1.Cells([idx_lig], [idx_col]).Interior.Color = 9944773 'CETTE LIGNE DEVIENT JAUNE
If [idx_lig] > [limite_haut] Then
Feuil1.[idx_lig] = Feuil1.[idx_lig].Value - 1
Feuil1.[idx_col] = Feuil1.[idx_col].Value + 1
End If
Feuil1.Cells([idx_lig], [idx_col]).Interior.Color = (RGB(228, 109, 10))

'
End Sub

Quelqu'un pourrait m'aider avec ça ?

Merci !

2 réponses

  1. Contributeur
    Bonjour tous,
    Et vérifie ce que tu a dans tes variables idx_lig et idx_col, si il y en a une à zéro ça plante.
    Note : les [] (crochets) ne sont pas nécessaire.
    A+
    1. Bonjour,

      Version Testé !

      Sub droite_haut()
      
          With Sheets("Feuil1")
              .Cells([idx_lig], [idx_col]).Interior.ColorIndex = 6 'Jaune
              If [idx_lig] > [limite_haut] Then
                  .[idx_lig].Value = Feuil1.[idx_lig].Value - 1
                  .[idx_col].Value = Feuil1.[idx_col].Value + 1
              End If
              .Cells([idx_lig], [idx_col]).Interior.ColorIndex = 4 'Vert
          End With
          
      End Sub
      '
      


      Cdt

      Lupin