Fusinonnement cellules suivant valeurs
ath80
Messages postés
208
Date d'inscription
Statut
Membre
Dernière intervention
-
CapMicro2B Messages postés 6 Date d'inscription Statut Membre Dernière intervention -
CapMicro2B Messages postés 6 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un fichier tout simple:
https://www.cjoint.com/c/CKfpqs8vBWX
Je voudrais que le fusionnement des cellules des mois (tableau vert) se fasse automatiquement suivant le nombre entré dans le tableau bleu.
Exemple:
Si le nombre associé au mois de Janvier dans le tableau bleu est 4, dans le tableau vert la cellule Janvier sera fusionnée de C7 à F7.
Si le nombre associé au mois de Janvier dans le tableau bleu est 5, dans le tableau vert la cellule Janvier sera fusionnée de C7 à G7.
Si le nombre associé au mois de Janvier dans le tableau bleu est 5 et 4 pour Février, dans le tableau vert la cellule Janvier sera fusionnée de C7 à G7 et la cellule Février de H7 à K7.
Merci d'avance.
J'ai un fichier tout simple:
https://www.cjoint.com/c/CKfpqs8vBWX
Je voudrais que le fusionnement des cellules des mois (tableau vert) se fasse automatiquement suivant le nombre entré dans le tableau bleu.
Exemple:
Si le nombre associé au mois de Janvier dans le tableau bleu est 4, dans le tableau vert la cellule Janvier sera fusionnée de C7 à F7.
Si le nombre associé au mois de Janvier dans le tableau bleu est 5, dans le tableau vert la cellule Janvier sera fusionnée de C7 à G7.
Si le nombre associé au mois de Janvier dans le tableau bleu est 5 et 4 pour Février, dans le tableau vert la cellule Janvier sera fusionnée de C7 à G7 et la cellule Février de H7 à K7.
Merci d'avance.
A voir également:
- Fusinonnement cellules suivant valeurs
- Formule excel pour additionner plusieurs cellules - Guide
- Verrouiller cellules excel - Guide
- Concatener deux cellules excel - Guide
- Excel liste de valeurs - Guide
- Afficher cellules masquées excel ✓ - Forum Excel
12 réponses
Merci de pour vos réponses.
Gyrus, quand je modifie le nombre de semaines pour un mois, le fusionnement des cellules ne fonctionne pas au clic.
CapMicro2B, ça fonctionne ! Ce que tu as appelé « zoneAffichage » permet de pouvoir déplacer le tableau du bas à n'importe quel endroit apparemment ?
De même, si j'ai bien compris la deuxième partie de ton code permet de fusionner suivant le nombre de semaines. Je t'avoue que j'ai un peu de mal à comprendre le code.
Dans ces codes :
Mo = cel.Offset(-1, 0).Value
cel.Offset(-1, 0).Copy
ActiveCell.Offset(0, col0 + 1).Range(Range("A1"), Range("A1").Offset(0, col - 1)).Select
Que représente le offset ?
Je vous remercie beaucoup.
Gyrus, quand je modifie le nombre de semaines pour un mois, le fusionnement des cellules ne fonctionne pas au clic.
CapMicro2B, ça fonctionne ! Ce que tu as appelé « zoneAffichage » permet de pouvoir déplacer le tableau du bas à n'importe quel endroit apparemment ?
De même, si j'ai bien compris la deuxième partie de ton code permet de fusionner suivant le nombre de semaines. Je t'avoue que j'ai un peu de mal à comprendre le code.
Dans ces codes :
Mo = cel.Offset(-1, 0).Value
cel.Offset(-1, 0).Copy
ActiveCell.Offset(0, col0 + 1).Range(Range("A1"), Range("A1").Offset(0, col - 1)).Select
Que représente le offset ?
Je vous remercie beaucoup.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
La fonction offset(ligne,colonne) permet de se déplacer en relatif par rapport à une cellule
exemple : range("B2").offset(0,4).range("A1:A4").select
à partir de B4 de la feuille, on se déplace de 0 ligne, 4 colonnes à droite puis le second range permet de sélectionner 4 cellules (coordonnées relatives par rapport à B6) soit les cellule B6 à B9.
Les zones nommées zoneaffichage et zoneSemaine permet de pouvoir déplacer ces zones sans perturber les macros. c'est la solution indispensable dés que l'on écrit des macros. Je vois trop souvent les macros tomber en panne suite à un ajout de ligne ou de colonne en haut de feuille.
Attention à déplacer les zone et à ne pas les éffacer en supprimant des lignes.
exemple : range("B2").offset(0,4).range("A1:A4").select
à partir de B4 de la feuille, on se déplace de 0 ligne, 4 colonnes à droite puis le second range permet de sélectionner 4 cellules (coordonnées relatives par rapport à B6) soit les cellule B6 à B9.
Les zones nommées zoneaffichage et zoneSemaine permet de pouvoir déplacer ces zones sans perturber les macros. c'est la solution indispensable dés que l'on écrit des macros. Je vois trop souvent les macros tomber en panne suite à un ajout de ligne ou de colonne en haut de feuille.
Attention à déplacer les zone et à ne pas les éffacer en supprimant des lignes.
Merci beaucoup à vous deux.
Gyrus ça fonctionne niquel mais il y a un petit problème pour moi. Lorsque l'on change la couleur du fusionnement des cellules, la couleur est écrasée au clic sur le bouton fusionnement. Si on veut attribuer une autre couleur, il faudrait entrer dans la macro et modifier le code couleur, je voudrais éviter cela.
CapMicro2B, pour l'explication du offset il me semble que tu as voulu dire "à partir de B2 de la feuille" non ?
Si je prends ton exemple, je voudrais maintenant que la zone en dessous du mois soit encadré en gras suivant le nombre de semaines dans le mois.
https://www.cjoint.com/c/CKhn1wnIV0p
Dans le fichier joint, il y a 4 semaines en Janvier donc je veux que ce soit encadré en gras de C8 à F16 et de même pour les autres mois (comme j'ai fait manuellement).
Merci d'avance.
Gyrus ça fonctionne niquel mais il y a un petit problème pour moi. Lorsque l'on change la couleur du fusionnement des cellules, la couleur est écrasée au clic sur le bouton fusionnement. Si on veut attribuer une autre couleur, il faudrait entrer dans la macro et modifier le code couleur, je voudrais éviter cela.
CapMicro2B, pour l'explication du offset il me semble que tu as voulu dire "à partir de B2 de la feuille" non ?
Si je prends ton exemple, je voudrais maintenant que la zone en dessous du mois soit encadré en gras suivant le nombre de semaines dans le mois.
https://www.cjoint.com/c/CKhn1wnIV0p
Dans le fichier joint, il y a 4 semaines en Janvier donc je veux que ce soit encadré en gras de C8 à F16 et de même pour les autres mois (comme j'ai fait manuellement).
Merci d'avance.
Bonjour,
Il suffit d'associer la couleur à celle du mois du premier tableau
https://www.cjoint.com/c/CKhouTMg06O
A+
Il suffit d'associer la couleur à celle du mois du premier tableau
https://www.cjoint.com/c/CKhouTMg06O
A+
Merci c'est niquel mais en cas d'ajout de lignes ou de colonnes le code ne fera plus effet. Je trouve super l'idée de CapMicro2B de mémoriser des plages et de les mettre dans le code.
Sinon savez vous comment faire pour encadrer en gras la zone associée au mois (explications et fichier dans mon message précédent).
Sinon savez vous comment faire pour encadrer en gras la zone associée au mois (explications et fichier dans mon message précédent).
La macro reproduit le format de la cellule du mois, donc si le titre de la ligne source du haut pour un mois donné est en lettre rouge, encadré de pointillé bleu et en fond jaune, la cellule fusionnée créée auras ce style (chaque mois peut être de style différent.)
Oui ça j'ai bien compris mais ce n'est pas ce que je demande, je me réexplique:
https://www.cjoint.com/c/CKhn1wnIV0p
Dans le fichier joint, il y a 4 semaines en Janvier donc je veux que ce soit encadré en gras de C8 à F16 et de même pour les autres mois (comme j'ai fait manuellement).
https://www.cjoint.com/c/CKhn1wnIV0p
Dans le fichier joint, il y a 4 semaines en Janvier donc je veux que ce soit encadré en gras de C8 à F16 et de même pour les autres mois (comme j'ai fait manuellement).
j'ai déposé le fichier corrigé
https://www.cjoint.com/?0KnrsGSsYF3
la zone des colonnes semaines à été nommée ZoneColSem, elle peut être agrandit d'une semaine (cas de la sem 53) et augmenté d'un nombre de lignes quelconque MAIS pour cela il faut toujours insérer les colonne ou ligne supplémentaire avant la dernière colonne ou la dernière ligne afin que la zoneColSem prenne en compte les nouvelles ligne ou colonne.
exemple pour augmenter le nb de ligne insérer les lignes à partir de la ligne 9 au mini à 15 au maxi mais surtout pas au delà de la ligne 16.
les zone nommée sont disponible dans le menu Formules "gestionnaire de noms"
https://www.cjoint.com/?0KnrsGSsYF3
la zone des colonnes semaines à été nommée ZoneColSem, elle peut être agrandit d'une semaine (cas de la sem 53) et augmenté d'un nombre de lignes quelconque MAIS pour cela il faut toujours insérer les colonne ou ligne supplémentaire avant la dernière colonne ou la dernière ligne afin que la zoneColSem prenne en compte les nouvelles ligne ou colonne.
exemple pour augmenter le nb de ligne insérer les lignes à partir de la ligne 9 au mini à 15 au maxi mais surtout pas au delà de la ligne 16.
les zone nommée sont disponible dans le menu Formules "gestionnaire de noms"