> Tous les forums > Forum Bureautique
 Excel - Déclencher macro après chgt d'une celluleSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
kezav
  Posté le 19/07/2010 @ 12:41 
Aller en bas de la page 
Nouvel astucien

Hello tout le monde,

J'ai créé une macro qui a l'air de pas trop mal fonctionner mais le problème vient plutôt du fait que je ne sais pas comment la déclencher quand je veux.

En fait, en complétant différent tableaux, je calcule une somme et en fonction du résultat de cette somme, ma macro doit rentrer en jeu. A chaque fois que la somme change, la macro doit refonctionner.

Y-a-t-il une fonction qui permettrait de détecter les changements de valeur de la cellule et à chaque changement lancerait la macro?

J'espère avoir été assez clair et merci beaucoup !!!!!!

Publicité
qmike549
 Posté le 19/07/2010 à 12:48 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Marmotte18
 Posté le 19/07/2010 à 18:59 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bonjour,

Dans Feuil1, mets la macro :

Public AncienneSomme As Currency, Fois1 As Boolean

Private Sub Worksheet_Change(ByVal Target As Range)

If Fois1 = False Then
Fois1 = True
AncienneSomme = Cells(4, 1)
MsgBox "Ancienne somme = " & AncienneSomme
Exit Sub
End If

If Cells(4, 1) <> AncienneSomme Then
AncienneSomme = Cells(4, 1)
MsgBox "Nouvelle somme = " & AncienneSomme
Call SuiteTraitement
End If

End Sub

Dans Module1, mets l'autre macro :

Sub SuiteTraitement()
MsgBox "Le traitement se poursuit car la somme a changé !"
End Sub

Ci-joint le fichier de démonstration : http://www.cijoint.fr/cjlink.php?file=cj201007/cijs1mfZjM.xls



Modifié par Marmotte18 le 19/07/2010 18:59
kezav
 Posté le 20/07/2010 à 10:58 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Nouvel astucien

Merci beaucoup pour vos réponses !

J'ai testé la solution de Marmotte qui marche bien, il y a juste un petit problème, c'est que ca ne fonctionne pas pour le premier changement effectué. En effet, je pense que le premier changement doit initialiser la valeur 'ancienne somme' et donc ca ne lance pas ma macro.

Quelqu'un a-t-il une idée ? Merci !

Marmotte18
 Posté le 20/07/2010 à 18:05 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bonsoir kezav,

Tu as raison, il y a un bug sur le fonctionnement. J'ai fait des corrections et voilà le résultat des courses :

Dans Feuil1, mettre le code :

Private Sub Worksheet_Change(ByVal Target As Range)

If Cells(4, 1) <> AncienneSomme Then
AncienneSomme = Cells(4, 1)
MsgBox "Nouvelle somme = " & AncienneSomme
Call SuiteTraitement
End If

End Sub

Dans ThisWorkbook, mettre le code :

Private Sub Workbook_Open()
AncienneSomme = Cells(4, 1)
MsgBox "Valeur de la somme à l'ouverture du classeur = " & AncienneSomme & " => aucune macro n'est lancée !"
End Sub

Dans Module1, mettre le code :

Public AncienneSomme As Currency

Sub SuiteTraitement()
MsgBox "Une macro est lancée car la somme a changé !"
End Sub

Ci-joint le fichier de démonstration : http://www.cijoint.fr/cjlink.php?file=cj201007/cijmxZwqlj.xls



Modifié par Marmotte18 le 20/07/2010 19:29
kezav
 Posté le 21/07/2010 à 10:19 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Nouvel astucien

Super !

Ca marche super bien

Un grand merci à Marmotte !!!

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
138,49 €Alimentation modulaire Seasonic Focus Plus Gold 850W (garantie 10 ans) à 138,49 €
Valable jusqu'au 03 Mars

Amazon fait une promotion sur l'alimentation Seasonic Focus Plus Gold 850W qui passe à 138,49 € livrée gratuitement alors qu'on la trouve ailleurs à partir de 169 €. Le niveau frise la perfection avec une magnifique certification 80+ OR et un câblage full modulaire, le tout dans un silence de cathédrale. L'alimentation est garantie 10 ans.


> Voir l'offre
59,99 €Souris Logitech MX Master 2S à 59,99 €
Valable jusqu'au 03 Mars

Fnac fait une promotion sur la souris sans fil Logitech MX Master 2S qui passe à 59,99 € alors qu'on la trouve ailleurs autour de 85 €. Cette évolution de la MX Master est équipée de la technologie Logitech Flow. Cette dernière, révolutionnaire, vous permet de déplacer le curseur de votre souris d'un ordinateur à un autre (jusqu'à 3 ordinateurs), d'effectuer des copier/coller de textes, d'une images ou encore de fichiers d'une machine à une autre. Vous allez ainsi pouvoir transférer vos contenus entre 3 ordinateurs différents sans la moindre difficulté. 


> Voir l'offre
52,50 €SSD Crucial P2 500 Go (3D NAND, NVMe, PCIe, M.2, 2400 Mo/s) à 52,50 €
Valable jusqu'au 05 Mars

Amazon fait une promotion sur le SSD Crucial P2 500 Go (3D NAND, NVMe, PCIe, M.2) qui passe à 52,50 €.  On le trouve ailleurs à partir de 70 €. Ce SSD offre des vitesses de lecture/écriture séquentielle allant jusqu’à 2 400/ 1 900 Mo/s. Il est garanti 5 ans. La livraison est gratuite.


> Voir l'offre

Sujets relatifs
Excel 2007 macro rajouter tri + cellule en surbrillance à chaque changement
(Macro Excel) Sélectionner cellule en fonction de sa couleur
excel 2007 cellule en couleur après la date ?
la macro qui designe une cellule pour excel
Excel - déclenchement macro sur modif cellule
Macro excel = Copier une cellule
tri d'aprés une autre cellule excel
2 pages par feuille dans macro excel
Recopie cellule par macro
case à cocher dans cellule Excel 2010
Plus de sujets relatifs à Excel - Déclencher macro après chgt d''une cellule
 > Tous les forums > Forum Bureautique