Excel (VBA): Création d'une fonction et recalcule automatique

Résolu
cs_FPatrick Messages postés 122 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 8 août 2014 - 13 août 2008 à 12:37
micou26 Messages postés 29 Date d'inscription dimanche 10 décembre 2000 Statut Membre Dernière intervention 11 août 2009 - 11 août 2009 à 11:45
Bonjour,

Je crais une fonction toto comme suit:

Function toto(Nbt as integer) as long
   Toto = Cells(1,1).value * Cells(2,1) * Nbt
End function

Dans une cellule je mets:  =toto(14)

Il m'affiche bien la valeur mais si je change les valeurs de cells(1,1) ou cells(2,1) , le resultat ne se raffraichit pas.

On est obligé de retourner sur la cellule pour revalider la fonction.

F9 ne fonctionne pas non plus.

Le but de l'opération est de réalisé un comptage spécifique dans une fonction avec diverses options.

Merci d'avance pour toutes les réponses et les recherches effectuées.

Bonne journée.

5 réponses

mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
13 août 2008 à 20:40
Salut,

modifie ta fonction :

Function toto(FirstRange as range, SecondRange as range, Nbt as integer) as long
   toto = FirstRange.value * SecondRange * Nbt
End function

et dans ta cellule :
=toto(A1;A2;14)

Je pense que ça devrait le faire

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
3
rbidocho Messages postés 41 Date d'inscription jeudi 7 juin 2007 Statut Membre Dernière intervention 15 septembre 2008
13 août 2008 à 13:04
Bonjour FPatrick,

Pour que cela fonctionne, il faut ajouter

Private Sub Worksheet_Change(ByVal Target As Range)
    Application.Calculate
End Sub

dans la page de code correspond à la feuille ou se situe la formule.

RB
0
cs_FPatrick Messages postés 122 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 8 août 2014 1
13 août 2008 à 15:07
Merci pour la réponse rapide

Cela marche une seule fois, juste après avoir modifié le module. Mais après plus rien.

Merci encore pour les recherches effectuées.
0
cs_FPatrick Messages postés 122 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 8 août 2014 1
14 août 2008 à 10:48
Merci, je vais analyser ma fonction pour prendre en compte ces paramètres.

Merci à toutes les personnes pour les recherches.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
micou26 Messages postés 29 Date d'inscription dimanche 10 décembre 2000 Statut Membre Dernière intervention 11 août 2009
11 août 2009 à 11:45
Bonjour,

Voila mon problème :

J'ai créé une feuille excel dans lequel j'ai quatre collone.
Le but de se tableau est de savoir le montant total des factures impayées pouyr un client, sachant qu'elles peuvent etre pour une association ou pour la SARL

- la première(case A) : le nom et premon du client
- la deuxième case B) : Association ou SARL
- la troisième(case C) : le montant des factures impayées
- la quatrième(case D): mention payé ou non payé

Avec ça, je voudrais faire quelques calculs.

- premier calcul : sommes des montants pour l'association (case à utiliser B et C) sachant qu'il est possible de rajouter plusieur ligne

- deuxieme calcul : sommes des montants pour la SARL (case à utiliser B et C) sachant qu'il est possible de rajouter plusieur ligne

-troisieme calcul : sommes des montants payé (case C et D)

MErci beaucoup pour votre réponse

Bonne journée a tous
0
Rejoignez-nous