Fonction Calcul VBA

Résolu/Fermé
Estelle 68* Messages postés 7 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 22 août 2008 - 21 août 2008 à 14:58
tony020422 Messages postés 445 Date d'inscription mercredi 7 mai 2008 Statut Membre Dernière intervention 19 janvier 2010 - 23 août 2008 à 16:08
Bonjour,

Je suis un peu en galère pour la création d'une fonction VBA. En fait j'ai un fichier Excel avec des données en colonne A (Requetes totales) et B (Erreurs). Dans la colonne C je calcul le pourcentage d'erreur cad (B/A*100) et cela pour tous les jours du mois (31 lignes au total). Le problème c'est que je suis obligé de tiré la colonne vers le bas pour copier la formule de calcul du pourcentage.

J'aimerais qu'à partir du moment ou je rentre des valeurs dans les colonnes A et B, la colonne C se calcule automatiquement. Si je ne rentre rien j'aimerais que la colonne C reste vide.

Est ce que quelqu'un pourrais m'aider?

Estelle.
A voir également:

4 réponses

tony020422 Messages postés 445 Date d'inscription mercredi 7 mai 2008 Statut Membre Dernière intervention 19 janvier 2010 6
21 août 2008 à 16:46
bonjour,
aurais tu penser a faire une macro ?! c'est relativement simple pour ce que tu veux faire..

Aprés avoir rentré la colonne A et B, tu ferais juste un "Ctrl+ .." et obtiendrais ce que tu veux !
Reste a voir aprés dans le cas des cellules vides isolées de A ou B, mais l'idée est là..cherches de ce coté la!

bon courage!
0
Estelle 68* Messages postés 7 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 22 août 2008
21 août 2008 à 17:40
En fait je souhaiterais que cela se fasse automatiquement car je ne serais pas la seule à utiliser ce fichier.......
Juste entrée A et B puis C se calcul automatiquement. Si rien en A et B alors rien en C.

Merci quand même pour le conseil.
0
wilfried_42 Messages postés 907 Date d'inscription mardi 19 août 2008 Statut Contributeur Dernière intervention 8 décembre 2009 242
21 août 2008 à 18:30
Bonjour

tu peux preparer ta colonne : en C1 :
=Si(OU(Estvide(A1);Estvide(B1));"";B1/A1*100)


et tu tires vers le bas
sinon tu passes par macro evennementielle à metre dans le code de la feuille concernée : ALT + F11

Private Sub Worksheet_Change(ByVal Target As Range)
    if not intersect(range("A:B"),target) is nothing then
            Range("C" & target.row).formula = "=B" & target.row & "/A" & target.row & "*100"
    end if
End Sub

0
Estelle 68* Messages postés 7 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 22 août 2008
22 août 2008 à 16:06
Bonjour,

Merci a Wilfried pour son aide. Problème résolu.

Bon week end a tous.
0
tony020422 Messages postés 445 Date d'inscription mercredi 7 mai 2008 Statut Membre Dernière intervention 19 janvier 2010 6
23 août 2008 à 16:08
kool,
bon week end!
0