[Déplacé VB6 --> VBA] Code derrière un bouton pour mise en forme

champi210781 Messages postés 10 Date d'inscription jeudi 20 décembre 2012 Statut Membre Dernière intervention 20 décembre 2012 - 25 févr. 2010 à 11:14
Molenn Messages postés 797 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 23 février 2011 - 25 févr. 2010 à 15:26
Dans l'un de mes fichiers excel, je souhaiterais lorsque j'appuie sur mon bouton que cela me mette 2 cellules en jaune et cela que je sois n'importe où dans mon tableau. Je positionne mon curseur, j'appuie sur mon bouton, la cellule sélectionnée puis la suivante se mettent en jaune
Merci par avance

7 réponses

cs_Jack Messages postés 14007 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 78
25 févr. 2010 à 12:22
Salut
Enregistre une macro pendant que tu le fais à la main et tu auras le code tout cuit

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
champi210781 Messages postés 10 Date d'inscription jeudi 20 décembre 2012 Statut Membre Dernière intervention 20 décembre 2012
25 févr. 2010 à 12:52
Merci, C'est cool ça fonctionne mais que sur les cellules que je sélectionne pendant l'enregistrement. Après l'enregistrement ce que je souhaiterais c'est que je sélectionne n'importe quelle cellule du tableau et hop les 2 cellules se mettent en jaune

Merci
0
Molenn Messages postés 797 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 23 février 2011 7
25 févr. 2010 à 14:01
Dans la macro que tu as enregistrée, tu dois avoir un truc comme :
Range("A1").select
Selection. blablabla


Vire le range(...).select.
Si ta macro commence avec le Selection. ..., c'est la plage de cellules qui sera sélectionnée au moment où tu lances la macro qui sera mise en jaune.

Molenn
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 230
25 févr. 2010 à 14:06
Bonjour, Molenn,
On évite ce select (qui n'est là que lorsque l'on enregistre une macro ... puisque l'on a commencé par sélectionner !)
On pointe directement sur la cellule !



____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
0

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

Posez votre question
Molenn Messages postés 797 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 23 février 2011 7
25 févr. 2010 à 14:19
Ben oui, c'est bien pour ça que je lui dis de l'enlever. Parce qu'à mon avis, son pb est là à présent

Il a enregistré sa macro. Ca fonctionne.
Le problème, c'est que ce sont toujours les 2 mêmes cellules, celles enregistrées avec la macro, qui changent de couleur.
Je lui suggère donc de les enlever.

Par contre, il faut garder le sélection pour faire ce qu'il veut, on ne peut pas pointer directement sur la cellule dans le code parce que par définition, il ne connait pas les cellules.

En lançant la macro à partir du Selection (avec un raccourci clavier pour être encore plus rapide) sur les cellules où il clique (donc, sans la partie Select), il aura répondu exactement à son besoin.

A moins que j'ai tout compris de travers, ce qui m'arrive souvent

Molenn
0
champi210781 Messages postés 10 Date d'inscription jeudi 20 décembre 2012 Statut Membre Dernière intervention 20 décembre 2012
25 févr. 2010 à 14:33
La solution de Molenn fonctionne bien en ritirant le Range...select, je peut cliquer n'importe ou et exécuter la macro où je veux en cliquant sur mon bouton mais le seul problème est que dans ces cas là je n'ai qu'une cellule qui est pris en compte et non 2 alors que j'en sélectionne bien 2 lors de l'enregistrement.

Merci par avance
0
Molenn Messages postés 797 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 23 février 2011 7
25 févr. 2010 à 15:26
Oublie ton enregistrement, ta macro est modifiée.
sans le code, je ne peux faire que supposer, mais deux solution :

Soit lors de l'enregistrement, tu as sélectionné tes 2 cellules en même temps avant de changer la couleur. Et bien là, il faut que tu fasses la même chose avant de lancer la macro.
Ta macro modifie la "SELECTION", il faut donc bien SELECTIONNER avant.

Soit tu as lors de l'enregistrement fait une première cellule, puis l'autre.
Dans ce cas, c'est encore plus simple, tu nettoies la macro avec toute la 2eme partie du code qui ne te sert plus à rien, et tu fais toutes tes cellules une par une. Après tout, c'est ce que tu as fait à l'enregistrement.

Molenn
0