Bonjour @ tous !

De retour au code après une looongue absence, je ne sais plus faire de vélo !

j'ai un fichier alimenté par un USF, environs 48 colonnes dont le contenu est OK ou KO entre les colonnes J et AP - je désire simplement calculer la proportion de OK de la manière suivante nbOK/(nbOK+nbKO)x100. Le résultat s'affichant pour chaque ligne en bout de tableau (col AV).

Je ne parviens tout simplement pas à trouver comment calculer chaque occurence ! ? ! je suis bien bien rouillé... :-(

Ci dessous 2 pistes que j''essaye de faire vivre:

- tentative d'intégration de fonction NB.SI - me retourne "erreur de syntaxe" ou "erreur de compilation

Code : Sélectionner tout - Visualiser dans une fenêtre à part
.Cells(derlign, 48).Formula = "=NB.SI(J" & derlign & ":" & "AP" & derlign & "," & ""OK"")/(NB.SI("J" & derlign & ":" & "AP" & derlign , ""OK"") + NB.SI("J" & derlign & ":" & "AP" & derlign , ""KO""))*100"
- autre approche - me retourne le résultat de TOUT le TABLEAU, donc on s'approche mais je ne parviens pas à le faire ligne par ligne! ne serait ce que pour la dernière ligne à soumission du formulaire...

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
cif1 = Application.WorksheetFunction.CountIf(Sheets("ACTIVITY OBSERVED").Range("J:AP"), "OK")
cif2 = Application.WorksheetFunction.CountIf(Sheets("ACTIVITY OBSERVED").Range("J:AP"), "KO")
If cif2 <> 0 Then
Sheets("ACTIVITY OBSERVED").Range("AV" & derlign).Value = cif1 / cif2 * 100
Else
     Sheets("ACTIVITY OBSERVED").Range("AV" & derlign).Value = 100
End If
un âme charitable aurait quelque lumière ?

Par avance, merci de m'avoir lu ;-)