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

16essai.xlsx (290.80 Ko)

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 Sub

NB- 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.

21sophie123-essai.xlsm (302.85 Ko)

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

Rechercher des sujets similaires à "formule ens code"