Menu

Tester si formule dans une colonne

-
Bonjour a vous tous, forum bonjour,

<config>Windows 10/ Internet Explorer 11.0</Excel 2007>

Je souhaiterai tester en réel la présence de formule dans la colonne E a partir de E3:E100.
Il se peut qu'il y ai (une valeur en plus de la formule).
On ne tient pas compte des cellules vides ni qui contienne une valeur

Seul le test d'absence de formules m'interresse, merci.

Je voudrais juste savoir si une formule (est bien ou pas) dans une des cellules de la colonne E3:E100

Si manque une ou des formules auquel cas Ex: MSGBOX " 4 cellules n'ont pas de formule"
Si toutes les cellules ont une formule alors on continue le programme.

Merci pour votre aide, bonne après midi a vous.

Cdlt Vieuray
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
4439
Date d'inscription
mardi 21 octobre 2014
Dernière intervention
5 décembre 2018
2
Merci
Bonjour Vieuray, bonjour le forum,

Peut-être comme ça :

Sub Macro1()
Dim O As Worksheet 'déclare la variable O (Onglet)

Set O = Worksheets("Feuil1") 'définit la variable O (à adapter à ton cas)
On Error Resume Next 'gestion des erreurs (en cas d'erreur passe à la ligne suivante)
'sélectionne les cellules contenant une formule dans la plage E3:E100 (génère une erreur si il n'y en a aucune)
O.Range("E3:E100").SpecialCells(xlCellTypeFormulas).Select
If Err <> 0 Then 'condition : si une erreur a été générée
    Err.Clear 'supprime l'erreur
    MsgBox "Aucune cellule ne contient de formule !" 'message
End If 'fin de la condition
End Sub

Dire « Merci » 2

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CommentCaMarche

CCM 38055 internautes nous ont dit merci ce mois-ci

Commenter la réponse de ThauTheme
0
Merci
Salut Thautheme,

Merci pour ta réponse et le petit code, c'est sympa a toi.

J'ai essayer ton code qui ne fonctionne pas tout a fait comme voulu.

J'ai rempli ma colonne (E) avec une formule puis j'ai lancer la macro
et la réponse est MsgBox "Aucune cellule ne contient de formule"

alors que toutes les cellules de la colonnes (E) sont bien remplies.

J'ai supprimer volontairement 3 formules au pif puis j'ai de nouveau lancer la macro et la réponse est toujours même.MsgBox "Aucune cellule ne contient de formule"

Je n'ai pas trouver l'erreur, désolé.

Bonne fin de fin de journée et merci

je retourne voir si je trouve.

Je peux t'envoyer mon fichier pour essai, si tu veux bien.

Cdlt vieuxray
Commenter la réponse de vieuxray
0
Merci
Re bonsoir Thautheme.

Je me permets de te mettre le lien pour le fichier, a toutes fins utiles et si tu veux t'en servir pour des essais.

J'ai RDV demain de bonne heure, je ferme le Pc pour ce soir.

Bye bye et merci pour ton aide, bonne soirée a toi.

Cdlt Vieuxray

https://www.cjoint.com/c/HKAsIcKxcAz
Commenter la réponse de vieuxray
0
Merci
salut

bon plus de réponse tant pis
cdlt
Commenter la réponse de vieuxray
Messages postés
12246
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
30 novembre 2018
0
Merci
Bonjour,

C'est toujours désolant de constater qu'aucun effort n'est fait du côté du demandeur.
As-tu au moins tenté quelque chose avec le code de ThauTheme (salut l'ami)?
Depuis 2013 que tu nous poses des questions ici et/ou ailleurs, n'as-tu donc rien appris?

Dans ce cas précis, il n'y a que 2 infimes modifications à apporter au code que l'on t'offre pour obtenir ce que tu veux :
1- déclarer une variable As Range et lui affecter le contenu de SpecialCells
2- Ajouter un Else dans la condition If.

Franchement!

L’algorithme, en FRANCAIS, de cet exercice est :

>Déclarer les variables: O As Worksheet, R As Range
>Affecter à O la feuille concernée
>Désactiver le gestionnaire d'erreur
>Affecter à R la plage des cellules concernées grâce à la méthode SpecialCells et sa constante xlCellTypeFormulas (sans sélectionner la plage hein!)
>Si Erreur (utiliser la propriété Number de l'objet Err)
===>La plage R ne contient pas de formule
===>Eventuellement vider l'objet Err
>Sinon
===>Utiliser la propriété Count de la propriété Cells de l'objet Range R pour retourner le nombre souhaité
>Fin Si
>Réactiver le gestionnaire d'erreur.

Tu n'as donc plus qu'à traduire cela en VBA, sachant que ThauTheme t'as déjà fournit les 4/5èmes du code...
Reviens nous montrer le résultat!
Cordialement,
Franck
Commenter la réponse de pijaku