XL 2016 Copier des cellules avec conditions d'1 feuille à l'autre

ABDELHAK

XLDnaute Occasionnel
Bonjour à tous,

Je cherche de l’aide pour résoudre mon problème, s’il vous plaît.

J’ai un fichier de 2 feuilles


Dans la (feuille «1»), il y a un tableau (TAB_A) (B5 : LS867).

La 2ième colonne contient des références (A1, A2, A3, …, FZ2)

Il y a 330 autres colonnes et à chaque colonne correspond une date : (C5 : C867), (D5 : D867), (E5 : E867), (F5 : F867), …, (LS5 : LSA867).


Dans la (feuille «2»), il y a 350 tableaux. Les cellules ont comme données des chiffres de 1 à 100 dont 20 cellules ont un fond vert.

TAB_1 : (B4 : LS13)

Exemple :

La cellule B18 à un fond vert, je veux que la macro exécute un copier/coller vers la colonne C de TAB1 (feuille «1») soit la cellule D5. Elle doit garder son fond vert et remplacer la valeur de B18 par le chiffre 1.

Passer à TAB_2 (B18 : LS27)

Exemple :

La cellule B18 à un fond vert, je veux que la macro exécute un copier/coller vers la colonne D de TAB1 (feuille «1») soit la cellule D5. Elle doit garder son fond vert et remplacer la valeur de R4 par le chiffre 1.

TAB_3 (B32 : LS41)

Exemple :

La cellule B32 à un fond vert, je veux que la macro exécute un copier/coller vers la colonne E de TAB1 (feuille «1») soit la cellule E5. Elle doit garder son fond vert et remplacer la valeur de R4 par le chiffre 1.

Et ainsi de suite jusqu’au dernier tableau (soit 350 tableaux au total)

Merci d’avance pour votre aide.
 

Pièces jointes

  • CN_SPECIMEN.xlsm
    130.5 KB · Affichages: 13

kingfadhel

XLDnaute Impliqué
Bonsoir, à confirmer!!!!
abdelhak.PNG
 

kingfadhel

XLDnaute Impliqué
Bonsoir,
Désolé mon PC plante dés que j'ouvre l'éditeur vba
C'est ce que j'ai raisonné j'ai utiliser notepad pour écrire ce bout de code
VB:
// à tester
sub Abdelhak()
for c =2 to 235
for l=4 to 139
if cells(l,c).Interior.Color = RGB(0, 250, 0) then
select case l
    case 4 to 13
    y=(c-1)*10-6+(l-3)
    sheets("1").cells(3,y).Interior.Color = RGB(0, 250, 0)
    sheets("1").cells(3,y)=1
    case 18 to 27
    y=(c-1)*10-6+(l-17)
    sheets("1").cells(4,y).Interior.Color = RGB(0, 250, 0)
    sheets("1").cells(4,y)=1
    case 32 to 41
    y=(c-1)*10-6+(l-31)
    sheets("1").cells(5,y).Interior.Color = RGB(0, 250, 0)
    sheets("1").cells(5,y)=1
    case 46 to 55
    y=(c-1)*10-6+(l-45)
    sheets("1").cells(6,y).Interior.Color = RGB(0, 250, 0)
    sheets("1").cells(6,y)=1
    case 60 to 69
    y=(c-1)*10-6+(l-59)
    sheets("1").cells(7,y).Interior.Color = RGB(0, 250, 0)
    sheets("1").cells(7,y)=1
    case 74 to 83
    y=(c-1)*10-6+(l-73)
    sheets("1").cells(8,y).Interior.Color = RGB(0, 250, 0)
    sheets("1").cells(8,y)=1
    case 88 to 97
    y=(c-1)*10-6+(l-87)
    sheets("1").cells(9,y).Interior.Color = RGB(0, 250, 0)
    sheets("1").cells(9,y)=1
    case 102 to 111
    y=(c-1)*10-6+(l-101)
    sheets("1").cells(10,y).Interior.Color = RGB(0, 250, 0)
    sheets("1").cells(10,y)=1
    case 116 to 125
    y=(c-1)*10-6+(l-115)
    sheets("1").cells(11,y).Interior.Color = RGB(0, 250, 0)
    sheets("1").cells(11,y)=1
    case 130 to 139
    y=(c-1)*10-6+(l-129)
    sheets("1").cells(12,y).Interior.Color = RGB(0, 250, 0)
    sheets("1").cells(12,y)=1
    end select   
next l
next c
end sub
 

ABDELHAK

XLDnaute Occasionnel
Bonjour kingfadhel,

Tout d’abord, merci d’avoir accordé de l’attention à mon projet.

Hélas, j’ai testé, sans résultats satisfaisants.

Mais je suis conscient que j’ai mal présenté celui-ci.

Pourriez-vous dès lors revoir les lignes de codes que vous m’avez envoyé mais pour 1 seule tableau (B4 : LS13) ?


J’ai un fichier de 2 feuilles


Dans la (feuille «1»), il y a un tableau (TAB_A) (B5 : LS867).

La 2ième colonne contient des références (A1, A2, A3, …, FZ2)

Il y a une colonne C : (C5 : C867)

Dans la (feuille «2»), il y a 1 tableau. Les cellules ont comme données des chiffres de 1 à 100 dont 20 cellules ont un fond vert.

TAB_1 : (B4 : LS13)

Exemple :

La cellule B18 à un fond vert, je veux que la macro exécute un copier/coller vers la colonne C de TAB1 (feuille «1») soit la cellule D5. Elle doit garder son fond vert et remplacer la valeur de B18 par le chiffre 1.

Je joins un second fichier, en espérant qu’il soit plus claire.

Merci pour votre aide.

Amicalement vôtre

ABDELHAK
 

Pièces jointes

  • CN_SPECIMEN(2).xlsm
    2.8 MB · Affichages: 13

ABDELHAK

XLDnaute Occasionnel
Bonjour kingfadhel,

Tout d’abord, merci d’avoir accordé de l’attention à mon projet.

Ensuite, je suis très heureux de vous annoncer que la macro que vous m’avez réalisée fonctionne à merveille (c’est casi de la magie vu la complexité des tâches à effectuées).

Par contre lorsque j’essaie d’exécuter la macro « Abdelhak », il ne se passe rien, pareille pour la macro « transposition ».

Ce qui est plus hallucinant, en appuyant sur le bouton « click me » la macro s’exécute parfaitement en tenant même compte des ajouts que j’y ai apportés.

Dès lors, pouvez-vous me dire à quelle macro est affecté ce « BOUTON MAGIQUE » ?

Je vous suis infiniment reconnaissant.

Par pure plaisir, je joins le fichier avec les ajouts pour que vous pouvez tester.

Infiniment merci pour votre aide.

ABDELHAK


P.S. : je suis désolé pour cette réponse tardive, mais ces derniers jours mon emploi du temps était hyper chargé.
 

Pièces jointes

  • CN_SPECIMEN - Copie.xlsm
    2.6 MB · Affichages: 6

kingfadhel

XLDnaute Impliqué
Bonjour kingfadhel,

Dès lors, pouvez-vous me dire à quelle macro est affecté ce « BOUTON MAGIQUE » ?
Je vous suis infiniment reconnaissant.
Par pure plaisir, je joins le fichier avec les ajouts pour que vous pouvez tester.
Infiniment merci pour votre aide.
ABDELHAK
P.S. : je suis désolé pour cette réponse tardive, mais ces derniers jours mon emploi du temps était hyper chargé.


La macro affectée au bouton Click Me n'est que "Abdelhak"
La macro Transposition recopie la ligne 3 (C3:IA3) tout en ajoutant de 1 à 10 à chaque lettre (A..HZ)

La macro Abdelhak s'exécute quand la feuille 2 est sélectionnée.
 

Discussions similaires

Réponses
9
Affichages
380