formule excel en vba

  • Initiateur de la discussion aude
  • Date de début
A

aude

Guest
bonjour le forum

j'aimerais utiliser la formule "nb.si(d8:d16;C28) sous vba, seulement je voudrais que le 16 soit une valeur paramètrée.
le problème est que je ne sais pas comment cla s'écrit. j'ai essayé avec des concaténations mais ça ne marche pas

nb.si(d8:d & ligne & ;c & ligne+12)

merci de m'aider
 
A

Alex

Guest
Salut ;



mmmhhhh, si c sous VB, a mon avis il faut que tu crees une variable intermediaire de stype string qui sera le resultat de la concatenation de tes differents parametres.

Ex:

dim my_str, my_str2 as string, indice, deuxieme_indice as integer
indice=16
deuxieme_indice=indice+12

my_str= "d" & indice
my_str2= "l" & deuxieme_indice

nb.si(my_str,my_str2....


Voila l'idee ; concatener avant l'usage de la fonction.

Remarque que ca marchera probablement sans dans une feuille excel ou ta formule doit etre exacte.

Bises, et good luck.

aleX
 
R

Robert

Guest
Salut le Forum, Aude, Alex

Tu peux aussi faire comme ça avec VBA et affecter ce code à une macro:

si tu tapes ta variable en A1, par exemple A1=40 (Adapte la cellule et sa valeur selon tes besoins), selectionne la cellule dans laquelle tu veux la formule et lance la macro.

*****************************
Dim lig As Long
lig = Cells(1,1).Value 'ça c'est ta variable à adapter (A1 pour l'exemple)
ActiveCell.Formula = "=COUNTIF(D8:D" & lig & ",C28)"
*****************************

Robert
 

Discussions similaires

Réponses
21
Affichages
385

Statistiques des forums

Discussions
312 489
Messages
2 088 855
Membres
103 977
dernier inscrit
Hermet