Bonjour,
Tout d'abord je tiens à préciser que je suis une vraie débutante en VBA (même si je m'arrange toujours pour avoir quelque chose qui fonctionne).
Je bosse actuellement sur un projet basé sur des Userforms. Dans l'un d'eux, je demande à l'utilisateur de donner une note à 10 critères (0, 2, 5 ou 10) pour cela j'ai mis à chaque fois un cadre (Frame1, Frame2, ...) et dans chaque cadre 4 boutons (donc 40 OptionButtons!!!).
Ensuite je fais le total de ces boutons dans zTotal (j'ai 40 codes comme celui-là).
Puis j'envoi mes données vers ma feuille Excel ou je peux lire un résumé de tous les avis donnés:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Private Sub OptionButton1_Change() If OptionButton1.Value = True Then zTotal = zTotal + 0 Else zTotal = zTotal - 0 End If End Sub
J'ai regardé dans la feuille est la cellule zTotal correspond, en language courant, à:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Dim j As Integer j = Worksheets("AUDIT").Range("DébHisto").CurrentRegion.Rows.Count With Worksheets("AUDIT").Range("DébHisto") .Offset(j, 24).Value = Format( ?????? , "0%")
=(E2+G2+I2+K2+M2+O2+Q2+S2+U2+W2)/(100-(NB.VIDE(D2:X2)-10)*10)
Je m'explique. Si l'utilisateur ne répond pas pour tous les critères mais seulement a 6 par exemple, la note est faussée si je la met directement en format "0%". Je cherche donc un moyen de tenir compte du nombre de cadres utilisés pour pouvoir calculer un pourcentage en fonction du nombre de réponses.
Je suis claire?
Merci d'avance pour vos réponses.
Partager