macro évenementielle

  • Initiateur de la discussion andré
  • Date de début
A

andré

Guest
Salut à vous,

Quelqu'un peut-il m'aider avec le code d'une macro :

En A1 j'ai un nombre (p.ex. 200)
A2 (format %) et A3 (format standard) sont soit vides, soit remplis.
Lorsque je tape 70 en A2, 70 % s'affiche, mais aussi 140 en A3
Lorsque je tape 120 en A3, 120 s'affiche mais aussi 60 % en A2

J'ai enregistré cette double macro, qui fonctionnent bien, mais ce que je souhaite c'est :
qu'elle s'enclenche par le simple fait de valider une des deux valeurs (A2 ou A3).
que la valeur en A3 se modifie automatiquement si je modifie la valeur en A1(comme s'il y avait une formule en A3)
que cette macro soit valable pour plusieurs séries de trois cellules placées toujours dans le même ordre, dans la même colonne et sur la même feuille.

Question subsidiaire (j'avais presqu'oublié !), comment indiquer à XL les séries de trois cellules sur lesquelles cette macro est d'application.

Je dois bien avouer que je ne suis pas parvenu à résoudre cette procédure par formules.

Merci d'avance.
Ândré.
 
S

sousou

Guest
A essayer!
la détection des cellules se fait par la lecture de la couleur du nombre, ont peut imaginer d'autres solutions.


Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Excel.Range)
If Target.Offset(0, -1).Interior.ColorIndex = 3 Then
Target.Offset(0, 1) = Target.Offset(0, -1) * Target
End If
If Target.Offset(0, -2).Interior.ColorIndex = 3 Then
Target.Offset(0, -1) = Target / Target.Offset(0, -2)

End If
End Sub
 
M

Michel_M

Guest
Bonsoir André

Ci joint une proposition (honnête)

Pour faire "comme une formule" en A3 j'ai multiplié par A1 par 4, histoire d'avoir qqchose de concret

Ne sachant pas si tu le souhaitais, je n'ai pas traité le cas de A1 (comme s'il y avait une formule en A1)

Bonne soirée et n'abuse pas de la duvel en lisant la macro

Amicalement (au passage, merci pour toutes tes astuces excel et les autres)
Michel
 

Pièces jointes

  • dd_xld.zip
    6.6 KB · Affichages: 31
M

Michel_M

Guest
Re,

J'avais mal lu ton post et en plus par précipitation, je m'étais planté dans la macro. Je reprends tout çà
question: les séries de 3 cellules doivent elles bien être dans la m^m colonne ?


Excuses
Michel
 
A

andré

Guest
Salut à vous tous,

Tout d'abord un grand merci pour votre empressement à essayer de m'aider en répondant à mon (petit) problème.

En A1 j'ai un nombre, que j'introduis manuellement (dans mon cas : le nombre de m2 construit)
En A2 le % de m2 vendables (compte tenu des surfaces communes : escaliers, ascenseurs, ...)
En A3 le nombre de m2 vendables (surfaces privatives) : =A1*A2

Idem pour les surfaces commerciales, commerces, bureaux, parkings, ...

Toutes ces données sont bien dans une et même colonne.

Ne vous pressez pas, je ne suis pas encore au bout de ma réserve.

Ândré.
 
M

Michel_M

Guest
Bonjour André

Désolé mais pas mal de trucs au boulot dont une bécane en carafe (je croyais être tranquille).

Et puis.... Voir le post "aide sur listbox" dans la série "je suis c... ou quoi".

j'essaierai peut-être ce soir ou cet après-midi mais...

Excuses moi
Michel
 
Y

Yeahou

Guest
Salut à tous

Voici une solution éventuelle
le fonctionnel est celui demandé.
les cellules à modifier sont en colonnes ABC, les cellules des colonnes DEF ne servent qu'à détecter un chgt. J'ai utilisé un Worksheet_selectionChange qui est dans ce cas beaucoup plus rapide qu'un Worksheet_Change. Il faut par contre définir dans la macro les plages des cellules servant de référence au test.
Dans le fichier, j'ai défini deux plages de référence A1:A3 et A6:A8 mais leur nombre peut être plus important

Cordialement, A+
 

Pièces jointes

  • Test_andre.zip
    7.4 KB · Affichages: 31
A

Abel

Guest
Ândré, tous

Absent hier, je n'ai pas pu te répondre.

J'ai essayé avec des formules.
Tu avais sans doute pensé à cette solution mais, bon, on ne sait jamais ...

Ma solution présente un petit inconvénient (voir pièce jointe). Tout dépend des utilisateurs.

Je ne me suis pas penché sur un code mais d'autres l'ont fait.

Merci de nous dire si l'une ou l'autre solution te convient.

En espérant que cela te dépanne.

Abel
 

Pièces jointes

  • Andre.zip
    7.1 KB · Affichages: 31
  • Andre.zip
    7.1 KB · Affichages: 24
  • Andre.zip
    7.1 KB · Affichages: 27
Y

Yeahou

Guest
Salut andré, le forum

Je n'avais pas vu que les données n'étaient pas en ligne, revoila le même prog avec cette fois ci les données en colonnes. Les lignes 4 à 6 ne sont la que pour la détection et peuvent être masquées.

Cordialement, A+
 

Pièces jointes

  • Test_andre2.zip
    7.2 KB · Affichages: 26
A

andré

Guest
Salut à vous tous,

Merci beaucoup pour vos réponses, mais hélas, j'ai un gros problème sur mon PC au bureau, il ne veut plus ouvrir les pièces jointes XL (bien les Word !).
Et comme ce soir je ne suis pas au bercail, je devrai attendre demain soir avant de pouvoir en prendre connaissance.
Je ne manquerai pas de vous tenir au courant.

En attendant, je vous souhaite une bonne fin de semaine.
Ândré.
 
M

Michel_M

Guest
Bonsoir à tous

Ci joint une autre proposition.

Une seule colonne "A" et des modules de 3 m2 de base, %, m2 vendables

La macro détectant dans quel cas tu te trouves avec l'opérateur modulo3

Je n'ai pas vérifié à fond mais ca me trainait dans la tête depuis l'autre jour...donc, avant d'aller regarder Thalassa, 1 des rares émissions françouaise de télé sympa, j'ai voulu terminer et te soumettre ma bidouille

Bonne soirée
Michel
 

Discussions similaires

Réponses
1
Affichages
178
Réponses
4
Affichages
266

Membres actuellement en ligne

Statistiques des forums

Discussions
312 348
Messages
2 087 508
Membres
103 568
dernier inscrit
NoS