Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Formule un peu compliqué en vba

  • Initiateur de la discussion Initiateur de la discussion Fanfan68
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

F

Fanfan68

Guest
Bonjour le forum,

Malgré quelques recherches sur le forum et aprés avoir essayé plusieurs possibilités, ne trouvant pas ce que je cherchais, j'ai du me résoudre à vous solliciter.

Je souhaiterai appliquer cette formule non pas dans une cellule mais sous forme de code vba :

=SI(NB.SI($B$2:$B$14988;B3055)<=1;"";"n° existant")

Est-ce possible ? si oui, pouvez-vous m'éguiller

Merci à trous
 
Re : Formule un peu compliqué en vba

Bonjour fanfan, le forum,

Cela peut être écrit comme ci-après.

Dans une fonction personnalisée:

Code:
Function NumExiste(PlageRecherche As Range, Numero As Double)
    NumExiste = IIf(Application.CountIf(PlageRecherche, Numero) <= 1, "", "n° existant")
End Function

Ou dans une procédure

Code:
If Application.CountIf(Range("B2:B14988"), Range("B3050")) then
  ' Le code fait ceci
Else
  ' Le code fait cela
end if


A+
 
Re : Formule un peu compliqué en vba

Bonjour Fanfan68, Hasco 🙂

Peut-être voulez-vous entrer la formule dans une cellule ?

Code:
Range("A1").Formula = "=IF(COUNTIF($B$2:$B$14988,B3055)<=1,"""",""n° existant"")"

La formule sera la même partout, malgré la référence relative.

A+
 
Re : Formule un peu compliqué en vba

Par contre Job 75, une question, si à la place de B3055, une valeur variable(ex : c.value(sachant que "c" est la cellule en cours de test)) comme dois-je l'écrire ?

J'ai bien sur essayé de remplacer le B3055 par c.value et bien sur dans la formule de ma cellule il y avait le texte c.value et non la valeur que représentait c

En espérant m'avoir fais comprendre

Merci
 
Re : Formule un peu compliqué en vba

Re,

Code:
Range("A1").Formula = "=IF(COUNTIF($B$2:$B$14988," & [COLOR="Red"]c[/COLOR] & ")<=1,"""",""n° existant"")"

C'est la valeur de la cellule c qui apparaîtra dans la formule. Attention, si c'est un texte, il faut l'encadrer par des guillemets :

Code:
Range("A1").Formula = "=IF(COUNTIF($B$2:$B$14988,""" & [COLOR="Red"]c[/COLOR] & """)<=1,"""",""n° existant"")"

A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

T
Réponses
2
Affichages
1 K
Tava94
T
L
Réponses
10
Affichages
1 K
L
A
Réponses
37
Affichages
4 K
asso78Lim
A
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…