VBA Copier sans mise en forme conditionnelle
Résolu
Anthelm
Messages postés
198
Date d'inscription
Statut
Membre
Dernière intervention
-
Anthelm Messages postés 198 Date d'inscription Statut Membre Dernière intervention -
Anthelm Messages postés 198 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai enregistré la macro suivante:
ActiveSheet.Unprotect
Range("W2:AK502").Select
Selection.ClearContents
Range("D2:R502").AdvancedFilter Action:= _
xlFilterCopy, CopyToRange:=Range("W2:AK502"), Unique:=True
Range("W2:AK502").Select
ActiveWorkbook.Worksheets("Tableau").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Tableau").Sort.SortFields.Add Key:=Range("Y2:Y502" _
), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Tableau").Sort.SortFields.Add Key:=Range("W2:W502" _
), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Tableau").Sort.SortFields.Add Key:=Range("X2:X502" _
), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Tableau").Sort
.SetRange Range("W2:AK502")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("D2:R502").Select
Selection.Copy
Range("W2").Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
ActiveWorkbook.Save
ActiveWindow.ScrollColumn = 14
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Range("S11").Select
ActiveWorkbook.Save
End Sub
Elle permet donc grace au filtre avancé de copier un tableau sans ses doublons et de faire un tri.
Par contre, cela apparait en blanc car la mise en page du tableau n'est pas copiée.
Donc, la macro fait aussi une copie de la mise en forme du 1er tableau vers le second.
Par contre je copie aussi la mise en forme conditionnelle et ça pose problème! Pourriez vous m'aider à modifier la macro svp?
Merci beaucoup!
J'ai enregistré la macro suivante:
ActiveSheet.Unprotect
Range("W2:AK502").Select
Selection.ClearContents
Range("D2:R502").AdvancedFilter Action:= _
xlFilterCopy, CopyToRange:=Range("W2:AK502"), Unique:=True
Range("W2:AK502").Select
ActiveWorkbook.Worksheets("Tableau").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Tableau").Sort.SortFields.Add Key:=Range("Y2:Y502" _
), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Tableau").Sort.SortFields.Add Key:=Range("W2:W502" _
), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Tableau").Sort.SortFields.Add Key:=Range("X2:X502" _
), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Tableau").Sort
.SetRange Range("W2:AK502")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("D2:R502").Select
Selection.Copy
Range("W2").Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
ActiveWorkbook.Save
ActiveWindow.ScrollColumn = 14
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Range("S11").Select
ActiveWorkbook.Save
End Sub
Elle permet donc grace au filtre avancé de copier un tableau sans ses doublons et de faire un tri.
Par contre, cela apparait en blanc car la mise en page du tableau n'est pas copiée.
Donc, la macro fait aussi une copie de la mise en forme du 1er tableau vers le second.
Par contre je copie aussi la mise en forme conditionnelle et ça pose problème! Pourriez vous m'aider à modifier la macro svp?
Merci beaucoup!
Configuration: Windows / Firefox 63.0
A voir également:
- VBA Copier sans mise en forme conditionnelle
- Mise en forme conditionnelle excel - Guide
- Mise a jour chrome - Accueil - Applications & Logiciels
- Mise en forme tableau croisé dynamique - Guide
- Copier mise en forme word - Accueil - Microsoft Office
- Mise a jour windows 10 - Accueil - Mise à jour
3 réponses
re
joint un fichier exemple pour pouvoir bosser dessus
pour joindre ton fichier
1) Tu vas dans https://www.cjoint.com/
2) Tu cliques sur [Parcourir] pour sélectionner ton fichier (15 Mo maxi)
3) Tu défiles vers le bas pour cliquer sur le bouton bleu [Créer le lien Cjoint]
4) Au bout de quelques secondes la deuxième page s'affiche, avec le lien en gras ; tu fais un clic-droit dessus et tu choisis "Copier le lien"
5) Tu reviens dans ta discussion sur CCM, et dans ton message tu fais "Coller".
=>Voir la fiche https://www.commentcamarche.net/faq/29493-utiliser-cjoint-pour-heberger-des-fichiers
dans le même style tu as https://mon-partage.fr/
joint un fichier exemple pour pouvoir bosser dessus
pour joindre ton fichier
1) Tu vas dans https://www.cjoint.com/
2) Tu cliques sur [Parcourir] pour sélectionner ton fichier (15 Mo maxi)
3) Tu défiles vers le bas pour cliquer sur le bouton bleu [Créer le lien Cjoint]
4) Au bout de quelques secondes la deuxième page s'affiche, avec le lien en gras ; tu fais un clic-droit dessus et tu choisis "Copier le lien"
5) Tu reviens dans ta discussion sur CCM, et dans ton message tu fais "Coller".
=>Voir la fiche https://www.commentcamarche.net/faq/29493-utiliser-cjoint-pour-heberger-des-fichiers
dans le même style tu as https://mon-partage.fr/
Il y a une chose qui serait peut être possible,
Sur la feuille il y a 3 mises en formes conditionnelles possibles: deux pour le premier tableau et une pour le deuxième tableau.
C'est possible de les gérer en VBA directement sur la feuille? comme ça, la copie de cellule ne changerait rien!
Sur la feuille il y a 3 mises en formes conditionnelles possibles: deux pour le premier tableau et une pour le deuxième tableau.
C'est possible de les gérer en VBA directement sur la feuille? comme ça, la copie de cellule ne changerait rien!
C'est dingue, je ne trouve aucun moyen de copier la mise en forme sans la MFC... Il suffirait de ça....
Il s'agit de la macro "Actualiser"
(Attention elle sauvegarde et verrouille la feuille)
J'aimerais qu'elle copie la mise en forme comme elle le fait, mais pas la mise en force conditionnelle
Merci beaucoup!