Formule NB.SI.ENS en code
Bonjour le forum,
Je cherche à mettre en code les formules présentes dans la feuille "Récap Nb de site" de mon fichier.
Je voudrai un fichier sans formule dans les cellules, mais uniquement en code.
Je vous remercie de l'attention que vous porterez à ma requête
Sophie
Bonsoir,
Ces quelques formules sont insuffisantes à alourdir le classeur... ! Mais si tu y tiens...
Sub Compter()
Dim d As Object, T(5, 2), k, a, s, n%, i%, j%
Set d = CreateObject("Scripting.Dictionary")
a = Array("Ant", 2015, 2016, 2017, "Post")
s = Split("Souscrit;Non Souscrit;Résilié", ";")
For i = 0 To 4
For j = 0 To 2
d(a(i) & s(j)) = 0
Next j
Next i
With Worksheets("Détail")
n = .Cells(.Rows.Count, 7).End(xlUp).Row
For i = 2 To n
If .Cells(i, 7) = "Gagné" Then
k = .Cells(i, 10)
Select Case .Cells(i, 14)
Case Is < 2015: k = "Ant" & k
Case Is > 2017: k = "Post" & k
Case Else: k = .Cells(i, 14) & k
End Select
d(k) = CInt(d(k)) + 1
End If
Next i
End With
For i = 0 To 4
For j = 0 To 2
If CInt(d(a(i) & s(j))) > 0 Then
T(i, j) = CInt(d(a(i) & s(j)))
T(5, j) = T(5, j) + T(i, j)
End If
Next j
Next i
Worksheets("Récap Nb de site").Range("C6:E11") = T
End SubNB- Je n'ai pas de goût pour opérer en VBA avec des fonctions Excel (sauf cas où cela s'avère plus économique). J'ai donc procédé autrement.
Cordialement.
Bonjour et merci beaucoup d'avoir pris le temps de me répondre.
Je pensais alléger mon fichier, j'aurai du le spécifier dans mon message initial
Surtout que c'était le but de la manœuvre.
Merci infiniment MFerrand, ça va tout de même me servir pour mon apprentissage de VBA
Sophie