Run-time error ‘1004’

jegosa -  
ThauTheme Messages postés 1564 Statut Membre -
Bonjour,

j'ai un macro qui a été fait sur excel, quand je l'execute j'ai l'erreur 1004 (Run-time error ‘1004’:
Method ‘Range’ of object’_Worksheet’ failed)

Sub SwitchHorizontalTabs()
Dim SelCol As Long
Dim FirstRow As Long
SelCol = ActiveCell.Column
With Sheet1
.Range("5:84").EntireRow.Hidden = True
FirstRow = 5 + ((SelCol - 5) * 20)
.Range(FirstRow & "." & FirstRow + 19).EntireRow.Hidden = False
End With

End Sub

est ce que vous avez une idée

merci d'avance

2 réponses

  1. ThauTheme Messages postés 1564 Statut Membre 160
     
    Bonjour le fil, bonjour le forum,

    Comme Yg_be je pensais que les erreurs dans ton code venaient des mêmes lignes qu'il a pointées mais je me suis rendu compte que c'est l'utilisation du CodeName : Sheet1 qui pose vraiment problème. Ton code modifié :
    Sub SwitchHorizontalTabs()
    Dim SelCol As Long
    Dim FirstRow As Long
    
    SelCol = ActiveCell.Column
    With Worksheets("Sheet1")
        .Range("5:84").EntireRow.Hidden = True
        FirstRow = 5 + ((SelCol - 5) * 20)
        If FirstRow < 1 Then FirstRow = 1
        .Range(FirstRow & ":" & FirstRow + 19).EntireRow.Hidden = False
    End With
    End Sub

    0
    1. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 783
       
      Bonjour,

      Pourquoi :
      .Range("5:84").EntireRow.Hidden = True
      ????
      Au lieu de :
      .Rows("5:84").Hidden = True
      !!!!

      D'autre part ActiveCell est toujours sur ActiveSheet mais pas obligatoirement sur la feuille nommée (que ce soit par son nom ou par son CodeName)
      0
      1. ThauTheme Messages postés 1564 Statut Membre 160 > Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention  
         
        Re,

        J'avoue que je ne pensais pas que Range("5:18").EntireRow.Hidden soit accepté mais apparemment ça fonctionne aussi, même si pour la clarté du code je lui préfère évidemment Rows("5:84").Hidden...
        0