VBA fusion cellule conditionnelle
Fermé
romanza
Messages postés
250
Date d'inscription
samedi 27 janvier 2007
Statut
Membre
Dernière intervention
10 avril 2023
-
28 févr. 2021 à 13:58
romanza Messages postés 250 Date d'inscription samedi 27 janvier 2007 Statut Membre Dernière intervention 10 avril 2023 - 3 mars 2021 à 10:58
romanza Messages postés 250 Date d'inscription samedi 27 janvier 2007 Statut Membre Dernière intervention 10 avril 2023 - 3 mars 2021 à 10:58
A voir également:
- VBA fusion cellule conditionnelle
- Mise en forme conditionnelle excel - Guide
- Excel compter cellule couleur sans vba - Guide
- Aller à la ligne dans une cellule excel - Guide
- Verrouiller cellule excel - Guide
- Fusionner cellule excel - Guide
14 réponses
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 775
28 févr. 2021 à 17:04
28 févr. 2021 à 17:04
Bonjour,
Sous Excel (et VBA), la fusion de cellules c'est le début de la catastrophe !
Sous Excel (et VBA), la fusion de cellules c'est le début de la catastrophe !
The_boss_68
Messages postés
925
Date d'inscription
dimanche 15 novembre 2015
Statut
Membre
Dernière intervention
23 avril 2024
174
28 févr. 2021 à 16:43
28 févr. 2021 à 16:43
Bonjour,
Mettre un fichier anonymisé pour une meilleur compréhension
Slts
Mettre un fichier anonymisé pour une meilleur compréhension
Slts
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 213
Modifié le 28 févr. 2021 à 18:15
Modifié le 28 févr. 2021 à 18:15
Bonjour,
j'approuve, éviter les fusions tant qu'on peut.
Tu peux te contenter de mettre le mois sur la 1ère colonne où il apparait ce qui fera exactement pareil.
En K11 :
En L11, à tirer vers la droite :
format de cellule
eric
j'approuve, éviter les fusions tant qu'on peut.
Tu peux te contenter de mettre le mois sur la 1ère colonne où il apparait ce qui fera exactement pareil.
En K11 :
=K12
En L11, à tirer vers la droite :
=SI(OU(K12="";MOIS(K12)<>MOIS(L12));L12;"")
format de cellule
mmmm-aa
eric
romanza
Messages postés
250
Date d'inscription
samedi 27 janvier 2007
Statut
Membre
Dernière intervention
10 avril 2023
2
28 févr. 2021 à 19:45
28 févr. 2021 à 19:45
Merci pour vos retours.
La fusion est un souhait de présentation sur un fichier Excel type Gant.
En K12 -NL12, mes dates peuvent varier en fonction d'une formule que j'ai mis en amont.
Aussi, pour plus de lisibilité, je souhaite que la ligne au dessus - L11-NL11 -n'indique que le mois.
Ex : En K12-Z12, j'ai des jours de février, en AA12-BF12, j'ai des jours de mars
Je souhaite que K11-Z11 soient fusionnées avec indication "FEVRIER"
que AA11-BF11 soient fusionnées avec indication "MARS
et ainsi de suite...."
romanza
La fusion est un souhait de présentation sur un fichier Excel type Gant.
En K12 -NL12, mes dates peuvent varier en fonction d'une formule que j'ai mis en amont.
Aussi, pour plus de lisibilité, je souhaite que la ligne au dessus - L11-NL11 -n'indique que le mois.
Ex : En K12-Z12, j'ai des jours de février, en AA12-BF12, j'ai des jours de mars
Je souhaite que K11-Z11 soient fusionnées avec indication "FEVRIER"
que AA11-BF11 soient fusionnées avec indication "MARS
et ainsi de suite...."
romanza
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 775
1 mars 2021 à 09:05
1 mars 2021 à 09:05
Bonjour,
Avec cette procédure :
Avec cette procédure :
Option Explicit Sub FusionnerMois() Dim r As Range Dim c As Range Dim d As Range Set r = ActiveSheet.Range("K12:NL12") With r.Offset(-1) .UnMerge .ClearContents .NumberFormat = "mmmm" .HorizontalAlignment = xlCenter End With For Each c In r.Cells If d Is Nothing Then Set d = c.Offset(-1) d.Value = c.Value End If If Month(c.Offset(0, 1).Value) <> Month(d.Value) Then ActiveSheet.Range(d, c.Offset(-1)).Merge Set d = Nothing End If Next c End Sub
romanza
Messages postés
250
Date d'inscription
samedi 27 janvier 2007
Statut
Membre
Dernière intervention
10 avril 2023
2
1 mars 2021 à 10:05
1 mars 2021 à 10:05
Bonjour Patrice,
Merci pour le temps passé.
Ce qu'il y a c'est que j'ai une barre de défilement des jours associée.
Je te propose de t'envoyer le fichier mais ici je ne sais pas comment....
romanza
Merci pour le temps passé.
Ce qu'il y a c'est que j'ai une barre de défilement des jours associée.
Je te propose de t'envoyer le fichier mais ici je ne sais pas comment....
romanza
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 775
1 mars 2021 à 10:22
1 mars 2021 à 10:22
Bonjour,
Déposes le fichier avec des commentaires explicatifs sur
https://mon-partage.fr/
et mets le lien obtenu dans ton prochain message.
Déposes le fichier avec des commentaires explicatifs sur
https://mon-partage.fr/
et mets le lien obtenu dans ton prochain message.
romanza
Messages postés
250
Date d'inscription
samedi 27 janvier 2007
Statut
Membre
Dernière intervention
10 avril 2023
2
1 mars 2021 à 10:33
1 mars 2021 à 10:33
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 775
Modifié le 1 mars 2021 à 10:59
Modifié le 1 mars 2021 à 10:59
Comme quoi il faut toujours poser la bonne question !!!!
Les dates ne sont pas en K12:NL12 mais en J11:NK11 et le résultat attendu n'est plus FÉVRIER mais févr-21.
Ceci dit, la macro fonctionne parfaitement, il suffit d'adapter la plage et le format.
Au lieu de la plage :
Et au lieu du format :
il suffit de le remplacer par :
EDIT : C'est quoi « une barre de défilement des jours associée »
Les dates ne sont pas en K12:NL12 mais en J11:NK11 et le résultat attendu n'est plus FÉVRIER mais févr-21.
Ceci dit, la macro fonctionne parfaitement, il suffit d'adapter la plage et le format.
Au lieu de la plage :
Set r = ActiveSheet.Range("K12:NL12")Il fallait l'adapter :
Set r = ActiveSheet.Range("J11:NK11")
Et au lieu du format :
.NumberFormat = "mmmm"
il suffit de le remplacer par :
.NumberFormat = "mmm-yy"
EDIT : C'est quoi « une barre de défilement des jours associée »
romanza
Messages postés
250
Date d'inscription
samedi 27 janvier 2007
Statut
Membre
Dernière intervention
10 avril 2023
2
1 mars 2021 à 11:02
1 mars 2021 à 11:02
Oui, j'avais adapté pour la plage de cellules.
Mais si tu utilises la barre de défilement des jours en haut, les mois fusionnés ne suivent pas.
Mais si tu utilises la barre de défilement des jours en haut, les mois fusionnés ne suivent pas.
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 775
Modifié le 1 mars 2021 à 11:29
Modifié le 1 mars 2021 à 11:29
Il faut affecter la macro à la barre de défilement
et ajouter en début de macro :
Et pour plus de fluidité, prévoir d'arrêter les calculs pendant la macro
et ajouter en début de macro :
Application.ScreenUpdating = False
Et pour plus de fluidité, prévoir d'arrêter les calculs pendant la macro
romanza
Messages postés
250
Date d'inscription
samedi 27 janvier 2007
Statut
Membre
Dernière intervention
10 avril 2023
2
1 mars 2021 à 11:47
1 mars 2021 à 11:47
Merci Patrice cela fonctionne très bien.
Peux-tu m'indiquer le code pour que les cellules mois soit bordurées
Peux-tu m'indiquer le code pour que les cellules mois soit bordurées
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 775
1 mars 2021 à 11:55
1 mars 2021 à 11:55
Remplaces :
Par
ActiveSheet.Range(d, c.Offset(-1)).Merge
Par
With ActiveSheet.Range(d, c.Offset(-1)) .Merge .Borders.Weight = xlThin End With
romanza
Messages postés
250
Date d'inscription
samedi 27 janvier 2007
Statut
Membre
Dernière intervention
10 avril 2023
2
1 mars 2021 à 11:59
1 mars 2021 à 11:59
Merci Patrice
TOP!!
Bonne journée
romanza
TOP!!
Bonne journée
romanza
romanza
Messages postés
250
Date d'inscription
samedi 27 janvier 2007
Statut
Membre
Dernière intervention
10 avril 2023
2
1 mars 2021 à 12:19
1 mars 2021 à 12:19
Autre souci dont je viens de me rendre compte.
Quand on filtre avec les segments la correspondance mois ne suit pas.
Comment peut-on déclencher la macro à partir du filtre segment?
Quand on filtre avec les segments la correspondance mois ne suit pas.
Comment peut-on déclencher la macro à partir du filtre segment?
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 775
1 mars 2021 à 13:33
1 mars 2021 à 13:33
Dans le module de la feuille TCD, ajoutes :
Private Sub Worksheet_PivotTableChangeSync(ByVal Target As PivotTable) FusionnerMois End Sub
romanza
Messages postés
250
Date d'inscription
samedi 27 janvier 2007
Statut
Membre
Dernière intervention
10 avril 2023
2
1 mars 2021 à 13:40
1 mars 2021 à 13:40
Merci Patrice,
Impec!
romanza
Impec!
romanza
romanza
Messages postés
250
Date d'inscription
samedi 27 janvier 2007
Statut
Membre
Dernière intervention
10 avril 2023
2
3 mars 2021 à 10:58
3 mars 2021 à 10:58
Bonjour Patrice,
Je me permets de te solliciter pour mon projet pour lequel je rencontre 2 questions sur l'onglet "Chronologie des tâches"
Je te joins le fichier et j'ai mis 2 commentaires sur l'onglet correspondant
https://mon-partage.fr/f/tZRhVCpw/
Je te remercie d'avance pour ton aide
Pascal
.
Je me permets de te solliciter pour mon projet pour lequel je rencontre 2 questions sur l'onglet "Chronologie des tâches"
Je te joins le fichier et j'ai mis 2 commentaires sur l'onglet correspondant
https://mon-partage.fr/f/tZRhVCpw/
Je te remercie d'avance pour ton aide
Pascal
.