Re: Executer une macro suite à un calcul avec worksheet calculate
#21
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 10-06-2010 16h22
Re,

Evidemment, je ne vais pas te dire que Laurent Longre a tort (Laurent Longre, c'est l'auteur de ce que tu cites là et pour lequel j'ai beaucoup de respect. Sache que c'est toujours bienvenue de citer les auteurs, c'est la moindre des choses ne serait-ce que par respect pour leur travail).

Cela dit, dans le cas que tu présentes et au risque de me répéter :
Citation :
A noter que dans ce cas, A1 ou B1 peuvent être saisies directement par l'utilisateur ou bien modifiées via une macro VBA (ça fonctionnera aussi).

Et sauf incompréhension totale de ma part : "les temps sont enregistrés dans une colonne les uns au dessous des autres", c'est bien via une macro VBA que ça se passe, non ? Ces temps enregistrés les uns en dessous des autres sont donc bien détectables en l'état (via l'évènement Change()) et restent pour moi la meilleure façon d'aborder le problème, si tu veux éviter les plantages inopportuns sur ton projet particulier. Mais bon, c'est à toi de voir.

Par ailleurs, tant que nous n'aurons pas la globalité de ton projet sous les yeux, nos échanges ne pourront être que partiellement efficaces...

Peut-être auras-tu plus de succès avec ton autre fil .
Je t'invite d'ailleurs à lire mon avis sur cette pratique. Ce n'est en aucun cas un reproche, seulement une remarque avec laquelle tu peux - ou non - être d'accord.

Cordialement,


Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 

Re: Executer une macro suite à un calcul avec worksheet calculate
#22
Aspirant XLPages

Inscription: 03/06/2010

Messages: 21

Système d'exploitation:
PC
Version Excel utilisée:
2007
Posté le : 10-06-2010 16h50
Re,

Je tiens à vous présenter à tous mes excuses si vous pensez que j'ai manqué de respect à qui que ce soit.

Comme vous l'avez vu, je suis totalement novice dans le domaine et effectivement j'ai posté sur d'autres forums la meme problématique car voyant que cela pouvait poser une difficulté, j'ai pensé pouvoir avoir plusieurs avis différents sur la questions.
Quoi qu'il en soit, j'ai toujours utilisé le meme pseudo partout, donc je n'ai pas voulu le dissimuler.
D'autant plus que j'actualise les réponses en fonction de ce que je trouve chez les uns et les autres, et je ne pars pas comme un voyou car je respecte le travail des autres.

Ceci dit, je viens de lire ton lien sur les multiposts et je comprends tout à fait ton point de vu, on a besoin d'avoir la discussion dans son ensemble pour plus de clarté.
Je reconnais donc mon erreur.


Quoi qu'il en soit, en "bidouillant" le code de Laurent Longre à la manière d'un débutant, le problème est résolu.
Je ne sais pas pourquoi ça fonctionne, mais il suffisait d'intervertir 2 lignes de codes dans Private Sub Verif:

Public ValPrec

Private Sub Worksheet_Calculate()
 Verif
End Sub

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
  If Intersect(Target, Range("C1")) Is Nothing Then Exit Sub
  Verif
 
 
End Sub

Private Sub Verif()
  If VarType(Range("A1")) = VarType(ValPrec) Then _
    If ValPrec = Range("C1") Then Exit Sub
 
  ValPrec = Range("C1")

   Macro1
     
                 
End Sub
 




et maintenant, cela fonctionne très bien, je vous poste le fichier que j'ai posté ici mais modifié.

Dans le code de Laurent Longre, Msgbox était suivi de ValPrec = Ranga("C1), j'avais donc remplacé MsgBox par Macro1, ce qui me semblait logique, mais cela ne marchait pas.

J'ai donc essayé de mettre Macro1 à la fin, et cela fonctionne.

Il est donc possible de lancer une macro à partir d'un changement automatique de cellule, cela pourra en plus m'etre très utile pour d'autres choses.

Je vous remercie infiniement pour votre patience et le temps que vous avez accordé à mon problème.

Et encore une fois, je vous présente mes excuses pour le multipost.


bien cordialement




Pièce jointe:
xlsm test calculate ok.xlsm   [ Taille: 16.31 Ko - Téléchargements: 617 ]
Hors Ligne
Rapport   Haut 


Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Qui consulte actuellement ce sujet ?   1 Utilisateur(s) anonymes