Erreur 1004 : impossible de lire la propriété countifs de la classe WorksheetFunction

boyz

XLDnaute Nouveau
Bonjour,

Lorsque j'exécute le code ci dessous, j'ai le message suivant qui apparait : Erreur 1004 : impossible de lire la propriété countifs de la classe WorksheetFunction. Quelqu'un à t'il une idée de comment procéder pour que cela fonctionne?

Vous pouvez trouver en pièce jointe mon fichier exemple.

Remarque : les range("XXX") sont les noms de mes colonnes.

Merci à vous.


Code:
Private Sub UserForm_Initialize()
Range("A2").Select
X = ActiveCell.Row

With Feuil1
Set plage = Union(.Range("EPI_Lunettes")(X), .Range("EPI_Chaussure")(X), .Range("EPI_Gants")(X), .Range("EPI_Visière")(X), .Range("EPI_Masque_aéro")(X), .Range("EPI_Masque_gaz")(X), .Range("EPI_Vêtement")(X))


For i = 1 To 7
If WorksheetFunction.CountIfs(plage, "X") = i Then
With Fproduit
cadre5.Width = 348 - i * 65
End With
End If

Next i
End With
End Sub
 

Pièces jointes

  • exemple v0.xlsm
    53.6 KB · Affichages: 59
  • exemple v0.xlsm
    53.6 KB · Affichages: 68

Pierrot93

XLDnaute Barbatruc
Re : Erreur 1004 : impossible de lire la propriété countifs de la classe WorksheetFun

Re,

essaye peut être ceci :
Code:
Private Sub UserForm_Initialize()
Dim c As Range
Range("A2").Select
X = ActiveCell.Row

With Feuil1
    Set plage = Union(.Range("EPI_Lunettes")(X), .Range("EPI_Chaussure")(X), .Range("EPI_Gants")(X), .Range("EPI_Visière")(X), .Range("EPI_Masque_aéro")(X), .Range("EPI_Masque_gaz")(X), .Range("EPI_Vêtement")(X))
End With

For Each c In plage
    If c = "X" Then i = i + 1
Next c

If i > 0 Then cadre5.Width = 348 - i * 65

End Sub
 

Discussions similaires

Statistiques des forums

Discussions
311 725
Messages
2 081 941
Membres
101 846
dernier inscrit
Silhabib