With avec mon tableau me pose problème - Cherche valeur 0 [Résolu]

Signaler
Messages postés
19
Date d'inscription
dimanche 21 décembre 2008
Statut
Membre
Dernière intervention
14 avril 2019
-
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
-
Bonjour à tous,

un petit problème avec "With" et mon tableau.

Ci -dessous mon code (raccourci...en amont, j'ai rempli mon tableau sur 2 colonnes et 32 lignes) :

Sub ComprehensionTableau()

'Définit le type de données pour le tableau.
Dim Montableau(0 To 32, 0 To 1) As Variant

With Montableau
Set c = .Find(0, LookIn:=xlValues)
If Not c Is False Then
MsgBox c & "Attention! Manque des Infos - Voir les champs en rouge"
Else
MsgBox "OK"
End If
End With
End Sub

Je cherche à contrôler si aucune cellule ne contient "0" (zéro).

A la ligne 6 (With Montableau), le message erreur est : "l'objet associé à with doit être défini par l'utilisateur ....en object ou variant "
Hors je l'ai déclarer en variant...

Je vous remercie tous de votre aide.

5 réponses

Messages postés
14655
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
23 février 2020
139
With sur un tableau en VBA n'a pas de sens.
De plus, tu déclare ton tableau, mais tu ne le remplis pas, donc c'est normal que ça ne fonctionne pas.
Messages postés
19
Date d'inscription
dimanche 21 décembre 2008
Statut
Membre
Dernière intervention
14 avril 2019

Merci NHenry de m'avoir répondu.
Comme je le disais dans mon post, j'ai shunté toute la partie du code ou je rempli mon tableau.
Tu me dis que with n'a pas de sens.
OK si tu le dis !
Je cherche à vérifier si dans mon tableau je n'ai pas la valeur "0".

merci de votre aide à tous,
Messages postés
14655
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
23 février 2020
139
Un tableau VBA ne gère aucune méthode (à ma connaissance), ce n'est pas un objet.

As-tu essayé de faire de simple boucles For ?
Messages postés
19
Date d'inscription
dimanche 21 décembre 2008
Statut
Membre
Dernière intervention
14 avril 2019

je viens de résoudre avec ce code tout bête.
Je me faisais des noeuds à la tête !

For Each cel In Montableau
If cel = "0" Then
MsgBox "Attention! Manque des Infos - Voir les champs en rouge"
Exit For
End If
Next cel

Grand Merci NHenry pour ton aide.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
220
Bonjour,
Aucune boucle nécessaire.
Ouvre ton aide VBA à la rubrique WorksheetFunction.Countif