Pb erreur 1004 Impossible de définir la propriété Hidden

Bonjour à tous,

Voila j'ai un soucis,

J'ai effectué cette macro qui fonctionne quand je la lance de la feuille concerné mais dès que je lance la macro d'une autre feuille j'ai le message d'erreur "Erreur 1004 Impossible de définir la propriété Hidden de la classe Range" à partir de la ligne mis en Gras.

Pourquoi ?

Sub Sup_QCP_1_APTT_SP_Ratio()

With Sheets("QCP 1 APTT SP Ratio")

ActiveSheet.Unprotect ("phl2855")

DerLig = Worksheets("QCP 1 APTT SP Ratio").Range("A" & Rows.Count).End(xlDown).Row

Worksheets("QCP 1 APTT SP Ratio").Range("A2" & ":A" & DerLig - 1).Hidden = False

Range(selection, selection.End(xlDown)).Select

Range(selection, selection.End(xlDown)).Select

selection.Delete Shift:=xlUp

Range("A2").Select

ActiveSheet.Protect ("phl2855")

End With

End Sub

Merci d'avance pour votre aide

Bonjour Cedthed

Comme tu utilises With .. End With, tu peux utiliser ce code

Sub Sup_QCP_1_APTT_SP_Ratio()
  Dim DerLig As Long
  With Sheets("QCP 1 APTT SP Ratio")
    .Unprotect ("phl2855")
    DerLig = .Range("A" & Rows.Count).End(xlDown).Row
    .Range("A2" & ":A" & DerLig - 1).Hidden = False
    '.Range(.Selection, .Selection.End(xlDown)).Select
    '.Range(.Selection, .Selection.End(xlDown)).Select
    'Selection.Delete Shift:=xlUp
    '.Range("A2").Select
    .Protect ("phl2855")
  End With
End Sub

En revanche, si tu lances ta macro depuis une autre feuille, tu ne peux pas utiliser de "Select"

A+

Bonjour Bruno,

Merci pour ta réponse mais j'ai toujours le même soucis.

A la ligne de code :

.Range("A2" & ":A" & DerLig - 1).Hidden = False

il m'indique :

erreur 1004 Impossible de définir la propriété Hidden de la classe Range !!!!!

je ne comprend pas pourquoi surtout que j'ai un macro similaire pour afficher mes lignes et ça fonctionne!!

Bonjour,

Je suis surpris que cette procédure fonctionne quand tu la lances de la feuille.

DerLig = .Range("A" & Rows.Count).End(xlDown).Row

J'aurais mieux vu

DerLig = .Range("A" & Rows.Count).End(xlUp).Row
.Range("A2" & ":A" & DerLig - 1).Hidden = False

J'aurais mieux vu

.Range("A2" & ":A" & DerLig - 1).EntireRow.Hidden = False

A+

Bonjour Frangy,

Je viens de remplacer les lignes par celle que tu m'as donné...ça fonctionne!!! Youpi

Et pour effacer toutes les ligne qu'il y a dans la feuille, aurais tu une idée (j'abuse!!) car mes lignes avec "Select" ne fonctionne pas en lançant la macro d'une autre feuille.

Merci

pour effacer toutes les lignes qu'il y a dans la feuille

worksheets("QCP 1 APTT SP Ratio").cells.clearcontents

A+

Super merci pour ton aide.

Je vous souhaite une bonne journée.

J'avance dans mes lignes de code

Rechercher des sujets similaires à "erreur 1004 impossible definir propriete hidden"