Probléme d'optimisation en VBA

Fermé
Valerie54001 Messages postés 135 Date d'inscription mardi 22 novembre 2016 Statut Membre Dernière intervention 22 avril 2024 - 7 avril 2019 à 14:07
Valerie54001 Messages postés 135 Date d'inscription mardi 22 novembre 2016 Statut Membre Dernière intervention 22 avril 2024 - 19 avril 2019 à 17:01
Bonjour la communauté,

je viens vers vous car je rencontre des soucis sur un fichier qui me tient bien à cœur.

https://mon-partage.fr/f/FqPJ6r8i/

Dans un premier temps, lorsque je veux copier des cellules et les coller sur un autre onglet, les couleurs des cellules copiées ne sont pas bonnes une fois collées.

Ensuite , si possible, je souhaite automatiser une opération ( cela est bien plus explicite en ouvrant le fichier qu'en le racontant dans ce post) je m'excuse mais je ne sais pas comment mieux exprimer l'opération autrement....

Une bouteille à la mer.....

5 réponses

yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 1 476
7 avril 2019 à 17:31
bonjour, comment se fait la copie des cellules?
0
Valerie54001 Messages postés 135 Date d'inscription mardi 22 novembre 2016 Statut Membre Dernière intervention 22 avril 2024 1
7 avril 2019 à 17:45
La copie doit se faire de la sélection J1:L2 de l'onglet ''ACAjaccio'' à l'onglet ''TEST'' de A1:C2.

Il n'y a pas la conservation des couleurs quand tu colles.

Pourquoi ?
0
yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 1 476 > Valerie54001 Messages postés 135 Date d'inscription mardi 22 novembre 2016 Statut Membre Dernière intervention 22 avril 2024
7 avril 2019 à 18:16
quelle technique utilises-tu pour faire la copie?
0
Valerie54001 Messages postés 135 Date d'inscription mardi 22 novembre 2016 Statut Membre Dernière intervention 22 avril 2024 1
Modifié le 7 avril 2019 à 18:27
J'ai essayé Ctrl+C, ensuite Ctrl + V.

Je me demande si le problème ne vient pas de la macro xxxxx à:

ub = UBound(t)
For i = 1 To ub - 1
x = t(i, 1)
For j = i + 1 To ub
If t(j, 2) = x Then
Cells(i, "J").Resize(, 3).Cut Range("O1").Offset(, n) 'couper-coller
Cells(j, "J").Resize(, 3).Cut Range("O2").Offset(, n) 'couper-coller
n = n + 3
Exit For
End If
0
yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 1 476 > Valerie54001 Messages postés 135 Date d'inscription mardi 22 novembre 2016 Statut Membre Dernière intervention 22 avril 2024
7 avril 2019 à 19:26
je me demande si le problème ne vient pas du fait que tu utilises du formatage conditionnel.
0
Valerie54001 Messages postés 135 Date d'inscription mardi 22 novembre 2016 Statut Membre Dernière intervention 22 avril 2024 1
7 avril 2019 à 21:13
Si tu le dis !

Je ne trouve pas la faille ..... je compte sur toi :)
0
Valerie54001 Messages postés 135 Date d'inscription mardi 22 novembre 2016 Statut Membre Dernière intervention 22 avril 2024 1
8 avril 2019 à 20:29
Bonsoir la communauté,

est ce que quelqu'un pourrait me dépatouiller, svp ?

Valérie
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
9 avril 2019 à 15:03
Bonjour,

Il n'y a pas la conservation des couleurs quand tu colles.

Pour ce problème il faut mettre la couleur manuellement. Car je ne sais pas comment les couleurs ont été mises, certainement par macros?

voir ci-dessous la marche à suivre (je pense que tu connais)



et tu verras que cela fonctionne!

0
Valerie54001 Messages postés 135 Date d'inscription mardi 22 novembre 2016 Statut Membre Dernière intervention 22 avril 2024 1
9 avril 2019 à 15:41
Bonjour le Pivert,

Manuellement bien sûr que cela fonctionne :)

Le but est que cela soit bon du premier coup sans manipulation autre de ma part pour un gain de temps et d’efficacité.

une autre idée .....
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
9 avril 2019 à 18:06
Bonjour,

Le but est que cela soit bon du premier coup
Certes, certes, mais comprends pas du tout comment ca marche votre truc.

Vous pensez que cela peut venir du sub xxxxxx, probleme: sur quelle feuille doit-il agir??

Vu qu'il y a des MFC en veux tu en voila, pas facile de s'y retrouver

Une chose est sure un copier/coller ne recopie pas la ou les couleurs d'une MFC
0
Valerie54001 Messages postés 135 Date d'inscription mardi 22 novembre 2016 Statut Membre Dernière intervention 22 avril 2024 1
9 avril 2019 à 19:28
Bonsoir f894009,

Je te l'accorde mais un oeil averti verras certainement plus clair que moi !

Dans l'onglet 20172018 , des datas d'entrée sont de A:F . DE G:M c'est les informations utiles ici.

Lorsque la macro XXXXX se lance , elle trie en fonction des noms de chaque lignes sur les onglets correspondants aux noms dans un premier temps.
Ensuite elle superpose les matches aller et retour en ligne A et B pour chaque onglet.

Là ou je pense que le problème se pose est lorsque XXXXX est lancée ,elle verifie si le nombre de la colonne K est supérieur ou égale à L alors le texte de la cellule en colonne I sera jaune.
Si le nombre de la colonne L est supérieur ou égale à K alors le texte de la cellule en colonne J sera jaune.
SI K=L alors pas de couleur pour I et J.
Donc aprés avoir affecté des cellules de couleurs jaunes après le triage sur chaque onglet. Je n'arrive pas copier/coller le texte et la couleur de celle-ci sur l'onglet TEST.

Voilà tu sais tout !

SI Une chose est sure un copier/coller ne recopie pas la ou les couleurs d'une MFC comment devrais-je m'y prendre?
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
10 avril 2019 à 07:25
Bonjour,

Ben, je regarde la chose avec les deux oeils, ouverts je suppose......
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
Modifié le 10 avril 2019 à 08:52
Re,

Comment est faite la copie cellule J:L

Lorsque la macro XXXXX se lance
Par miracle et quelle feuille doit etre selectionnee
0
Valerie54001 Messages postés 135 Date d'inscription mardi 22 novembre 2016 Statut Membre Dernière intervention 22 avril 2024 1
10 avril 2019 à 18:47
Bonjour f894009,

C'est la copie de I:J avec une MFC si K>L alors la copie de I sera avec fond jaune
si L>K alors la copie de J sera avec fond jaune
si K=L alors la copie de I et de J se fera avec fond blanc ( origine )

Concernant le miracle :) bien qu'ironique :
11/05/2018 ACAjaccio Niort 2 2 9 ( match aller )

Les feuilles sélectionnées seront celles qui contiendront les textes en I et J donc les onglets ACAjaccio et Niort en ligne 1

Ensuite la macro xxxxxx trouvera
28/07/2017 Niort ACAjaccio 0 0 9 ( match retour ) qui seront donc en ligne 2 des feuilles Niort et ACAjaccio.

Je suis passionnée de foot et de stats particuliéres.

Merci de suivre l'affaire cela m'encourage même si parfois nous sommes dans un brouillard londonien.
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
11 avril 2019 à 07:11
Bonjour,

Je suis passionnée de foot
Peut-Être...

Ensuite la macro xxxxxx trouvera
Je repete: par quel miracle idem, dans le code y a rien qui indique que c'est la feuille 28/07/2017 qui est concerné (en un seul mot)

C'est la copie de I:J avec une MFC si K>L alors la copie de I sera avec fond jaune
Vous expliquez ce que doit être le copier/coller mais pas par quel moyen. A vous le ballon
0

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

Posez votre question
Bonjour,

Dans ta macro xxxxx, au lieu d'utiliser la commande " ActiveSheet.Paste "
utilise plutôt la commande " Selection.PasteSpecial Paste:=xlPasteAllUsingSourceTheme, Operation:=xlNone _
, SkipBlanks:=False, Transpose:=False "

qui correspond à un collage de texte + mise en forme.
Est-ce que ça répond à ta question ?
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
11 avril 2019 à 18:08
Bon jour,

Marchera pas, la couleur vient d'une MFC
0
Valerie54001 Messages postés 135 Date d'inscription mardi 22 novembre 2016 Statut Membre Dernière intervention 22 avril 2024 1
19 avril 2019 à 16:59
Bonjour Sophie,

Désolé de répondre si tardivement.....

En changeant les 2 lignes j'ai :
'' Range("J1", Cells(1, Columns.Count)).SpecialCells(xlCellTypeConstants, 1).ColumnWidth = 4''
en surbrillance.

Je sens que l'on est proche :)
0