OVH Cloud OVH Cloud

VBA pour remplir une plage sous conditions

12 réponses
Avatar
M.
Bonjour,

il y a quelques mois déjà j'avais reçu de l'aide pour remplir une plage
avec des 3, sous deux conditions : que la plage soit vide et que la
cellule D1 contienne "f".

On m'avait donné entre autre cette instruction qui semblait marcher :

If [count(plage)] = 0 And [$D$1] = "f" Then [plage] = 3

En y regardant de plus près ça ne marche pas bien : la plage se remplit
bien de 3, mais cela même si elle était déjà pleine de nombres, qui sont
tous perdus.

Je ne vois pas quoi faire. La plage est dynamique, définie avec DECALER
dans Insertion/Nom/Definir;

Quelqu'un a une autre idée pour remplacer l'instruction ci-dessus ?

merci de votre aide

Fred

2 réponses

1 2
Avatar
M.
Frédéric Sigonneau a dit :

Je ne dirais pas que c'est un problème à proprement parler puisque c'est ce qui
est attendu de Count


Bonjour Frédéric. Ce n'est donc pas là qu'il y avait problème...

Pour dénombrer uniquement les cellules qui contiennent quelque chose tu peux
utiliser CountA :


Ah... voilà donc pourquoi on m'avait initialement donné le code :
Counta("plage")

Code qui je suppose ne peut pas marcher avec un a minuscule...

Et moi qui avait cru que le a minuscule était une faute de frappe (en
m'étonnant même que la touche a n'est pas proche de celle du t !).

Merci pour l'éclaircissement

fred

Avatar
Frédéric Sigonneau
Bonjour,


Ah... voilà donc pourquoi on m'avait initialement donné le code :
Counta("plage")

Code qui je suppose ne peut pas marcher avec un a minuscule...


Ça ne devrait faire aucune différence : VBA met le A en majuscule 'de lui-même'
puisque CountA est reconnu comme un mot clé valide du langage (en tout cas avec
Excel 2002).

FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !

1 2