Fixer une cellule active d'un tableau excel
Résolu/Fermé
mic13710
Messages postés
1087
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
13 mai 2021
-
23 févr. 2009 à 13:47
mic13710 Messages postés 1087 Date d'inscription samedi 26 novembre 2005 Statut Membre Dernière intervention 13 mai 2021 - 13 mars 2009 à 09:17
mic13710 Messages postés 1087 Date d'inscription samedi 26 novembre 2005 Statut Membre Dernière intervention 13 mai 2021 - 13 mars 2009 à 09:17
A voir également:
- Fixer une cellule active d'un tableau excel
- Tableau croisé dynamique - Guide
- Aller à la ligne dans une cellule excel - Guide
- Excel cellule couleur si condition texte - Guide
- Comment imprimer un tableau excel sur une seule page - Guide
- Trier un tableau excel - Guide
5 réponses
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
643
23 févr. 2009 à 14:42
23 févr. 2009 à 14:42
Bonjour,
J'ai réalisé un petit exemple.
Pour comprendre le fonctionnement il faut regarder le code VBA en cliquant bouton droit sur le nom de l'onglet "EXEMPLE" et "visualiser le code"
http://www.cijoint.fr/cjlink.php?file=cj200902/cijuUKPYfA.xls
pour commencer selectionner la 1° case jaune...
Pour plus de précision ne pas hésiter à me demander.
A+
J'ai réalisé un petit exemple.
Pour comprendre le fonctionnement il faut regarder le code VBA en cliquant bouton droit sur le nom de l'onglet "EXEMPLE" et "visualiser le code"
http://www.cijoint.fr/cjlink.php?file=cj200902/cijuUKPYfA.xls
pour commencer selectionner la 1° case jaune...
Pour plus de précision ne pas hésiter à me demander.
A+
mic13710
Messages postés
1087
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
13 mai 2021
355
12 mars 2009 à 19:19
12 mars 2009 à 19:19
Salut Pilas,
Après plusieurs jour d'essai, le code marche bien, mais il y a un problème d'affichage lors de la première sélection.
En effet, lorsqu'on ouvre le fichier, ILIG_SELECT et ICOL_SELECT n'ont aucune valeur attribuée et donc si je sélectionne une autre cellule, la dernière sélection sauvegardée reste colorée donnant ainsi 2 cellules colorées au lieu d'une.
Pour éviter ça, il faut d'abord commencer par cliquer sur la cellule colorée pour affecter les valeurs correctes aux 2 variables, et après ça marche sans pb. Mais c'est pas glop.
J'ai bien essayé de remplacer Cells(ILIG_SELECT, ICOL_SELECT).Interior.ColorIndex = x1None
par: Range("C3:N7").Interior.ColorIndex = x1None, mais ça ne change rien.
As-tu une idée pour contourner le problème?
D'avance merci.
Après plusieurs jour d'essai, le code marche bien, mais il y a un problème d'affichage lors de la première sélection.
En effet, lorsqu'on ouvre le fichier, ILIG_SELECT et ICOL_SELECT n'ont aucune valeur attribuée et donc si je sélectionne une autre cellule, la dernière sélection sauvegardée reste colorée donnant ainsi 2 cellules colorées au lieu d'une.
Pour éviter ça, il faut d'abord commencer par cliquer sur la cellule colorée pour affecter les valeurs correctes aux 2 variables, et après ça marche sans pb. Mais c'est pas glop.
J'ai bien essayé de remplacer Cells(ILIG_SELECT, ICOL_SELECT).Interior.ColorIndex = x1None
par: Range("C3:N7").Interior.ColorIndex = x1None, mais ça ne change rien.
As-tu une idée pour contourner le problème?
D'avance merci.
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
643
12 mars 2009 à 21:41
12 mars 2009 à 21:41
Bonsoir,
Oui je comprends le problème, je te propose de le résoudre à l'ouverture ou à la fermeture du classeur pour celà du mets le code suivant dans le dossier macros de "ThisWorkbook" :
dans cet exemple quand tu fermes ton classeur, il enlève la couleur de ta plage (dans mon exemple c'est la plage C2:J20 de la feuille "EXEMPLE")
A+
Oui je comprends le problème, je te propose de le résoudre à l'ouverture ou à la fermeture du classeur pour celà du mets le code suivant dans le dossier macros de "ThisWorkbook" :
Private Sub Workbook_BeforeClose(Cancel As Boolean) Sheets("EXEMPLE").Range("C2:J20").Interior.ColorIndex = x1None End Sub
dans cet exemple quand tu fermes ton classeur, il enlève la couleur de ta plage (dans mon exemple c'est la plage C2:J20 de la feuille "EXEMPLE")
A+
mic13710
Messages postés
1087
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
13 mai 2021
355
12 mars 2009 à 22:52
12 mars 2009 à 22:52
Merci Pilas.
Ton code fonctionne bien. Cependant, comme j'ai déjà une routine Private Sub Workbook_Open() dans mon Workbook, j'y ai inséré le code qu'il me fallait pour mon application et ça marche aussi.
L'avantage, c'est qu'il ne me demande pas de sauvegarder avant de fermer. Par contre, ça ralenti un petit peu l'ouverture du fichier. Mais je ne suis pas pressé.
Je ne sais pas si le (Cancel As Boolean) de ton Private Sub Workbook a de l'importance. En tout cas, ça marche sans.
Ton code fonctionne bien. Cependant, comme j'ai déjà une routine Private Sub Workbook_Open() dans mon Workbook, j'y ai inséré le code qu'il me fallait pour mon application et ça marche aussi.
L'avantage, c'est qu'il ne me demande pas de sauvegarder avant de fermer. Par contre, ça ralenti un petit peu l'ouverture du fichier. Mais je ne suis pas pressé.
Je ne sais pas si le (Cancel As Boolean) de ton Private Sub Workbook a de l'importance. En tout cas, ça marche sans.
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
643
12 mars 2009 à 23:16
12 mars 2009 à 23:16
Oui, tu peux sans problème le mettre à l'open. Quant à Cancel c'est un booléen qui ne sert que dans la fonction close éventuellement a faire un test pour empécher la fermerture du classeur si des conditions ne sont pas remplies...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
mic13710
Messages postés
1087
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
13 mai 2021
355
13 mars 2009 à 09:17
13 mars 2009 à 09:17
Bon donc je n 'ai rien oublié dans mon code.
Merci pour tout pilas.
Va falloir que je creuse un peu VBA si je veux progresser.
Merci pour tout pilas.
Va falloir que je creuse un peu VBA si je veux progresser.
23 févr. 2009 à 15:29
Par contre, j'ai un problème sur des cellules qui ont un format conditionnel actif.
Je m'explique, mes lignes sont les années (2009 à 2013) et mes colonnes les mois.
J'ai un format conditionnel sur tout le tableau qui colore en jaune la ligne de l'année en cours (2009 en l'occurrence).
J'ai bien entendu changé le ColorIndex du fichier VBA à 3 (rouge).
Ca fonctionne nickel pour les cellules 2010 à 2013 (conditionnel faux) mais pas pour 2009 (conditionnel vrai) qui restent jaune. Le renvoi d'info des titres se fait bien, mais ça c'est normal.
Y'a t'il un moyen de contourner le format conditionnel ou bien est-ce que je dois le supprimer?
23 févr. 2009 à 16:05
Apparemment Il n' y a pas d'autre solution que de l'enlever.
A+
23 févr. 2009 à 16:14
Je l'ai donc supprimé et je l'ai conservé seulement sur les lignes de titre en mettant en jaune l'année et le mois en cours.
Merci encore pour ton aide qui m'a été d'un grand secours.