XL 2010 Macro Copier Coller Valeur avec conditions

ACDEB

XLDnaute Nouveau
Bonjour à tous !!

Je commence tout juste à essayer de faire des macros... Donc je rame un peu ! J'ai déjà vu des sujets un peu similaires au miens mais je ne comprend pas très bien...
C'est pour ça que j'aurais besoin de votre aide.

Dans le cadre de mon alternance, j'ai créé un formulaire via KIZEO. Or, la mise en page que je voulais au final n'est pas possible avec KIZEO. C'est pourquoi j'aurais aimé faire un copier coller des valeurs dans un autre fichier afin de faire la mise en page comme j'aurais voulu.

Mais, le copier coller doit se faire en fonction des valeurs. Je m'explique : quand dans le fichier que me donne KIZEO (Essai Macro KIZEO) il est marqué "VOIE COTE ROUTE", je voudrais que les valeurs contenues dans la colonne "Wagons" se copient dans le nouveau fichier (Etat des lieux Plf) dans la colonne correspondant à "VOIE COTE ROUTE" etc...

Voici ce que j'avais essayé de faire :

Sub Essai()

Workbooks.Open Filename:= _
"P:\INFRALOG\URA\COMMUN_UNITE\28_Parc_SES\Stagiaires\Anne-Charlotte\KIZEO\Essai Macro\Essai Macro KIZEO.xlsx"

' ma_variable = "VOIE COTE ROUTE"

' Do Until ma_variable = "VOIE MILIEU"

If Columns("A:A") = "VOIE COTE ROUTE" Then

Workbooks("Essai Macro KIZEO.xlsx").Sheets("PLF").Range("B6").Copy Destination:=Workbooks("Etat des lieux Pft.xlsm").Sheets("PLF").Range("B3")
' Loop

End Sub

Sauf que je n'ai pas réussi à trouver une macro correspondant, ou alors je ne les comprend pas...

Pouvez vous m'aider à comprendre afin que je puisse faire ma macro ou m'aiguiller ?

Merci beaucoup,

ACDEB
 

Johan

XLDnaute Occasionnel
Ok autant pour moi

Renvoyez-moi vos 2 fichiers tels qu'ils sont avec la bonne mise en forme et
-la macro actuelle pour le fichier Etats des lieux
-des données renseignées pour chaque colonne dans le fichier KIZEO pour que je test l'importation
 

Johan

XLDnaute Occasionnel
Re,

Fais gaffe dans ton fichier KIZEO quand tu remplis ta colonne, t'avais un espace après "VOIE COTE ROUTE " et deux espaces entre "VOIE" et "CHARGEMENT"!!! j'ai corrigé

Du coup j'ai fait ça à la dur, c'est pas très beau mais ça marche...
 

Pièces jointes

  • Copie de Etat des lieux Pft - Copie.xlsm
    34.3 KB · Affichages: 24
  • Essai Macro KIZEO (2).xlsx
    17.5 KB · Affichages: 21

ACDEB

XLDnaute Nouveau
Johan,

j'ai encore un soucis, je suis vraiment désolée...
J'ai voulu faire la maligne et essayer toute seule avec la base de ta macro mais... Je n'y arrive pas...

En effet, je voudrais par la suite, copier selon une condition : en effet, dans le fichier ne contenant pas la macro, il y a plusieurs autres colonnes. Je voudrais que ce qu'il y a de présent dans ces colonnes se transposent dans la colonne correspondante dans le fichier contenant la macro.

Exemple : dans le fichier, il y a une colonne "V/P". Je voudrais que les données se transposent dans l'autre fichier, dans la colonne correspondante c'est à dire "V/P". Mais il faut que cela corresponde avec les différentes Voie (Voie côté route, voie côté DOT ect...).

De plus, j'aurais voulu que les colonnes où il y a une croix soient copiés dans la colonne "REV VSP".
En effet, j'ai fait une mise en forme conditionnelle qui met une croix pour m'alerter de la date (quand la date limite est à moins de 1 mois, une croix apparait).
Mais les valeurs à copier coller ne sont pas les croix, mais les dates... Et cela en fonction toujours de la ligne correspondante (Voie côté DOT, voie côté route etc...)

Je ne sais pas si je suis bien claire...

En tout cas si vous pouviez m'aider, ou m'aiguiller...

Désolé de vous faire perdre votre temps, j'ai essayé seule mais... Je ne comprend pas tout encore...

Merci encore,
 

Pièces jointes

  • Copie de Copie de Etat des lieux Pft - 2.xlsm
    33.6 KB · Affichages: 18
  • Essai Macro KIZEO.xlsx
    18.3 KB · Affichages: 14

Johan

XLDnaute Occasionnel
Salut Anne-Charlotte,

J'ai compris la première partie de ton besoin mais l'histoire de la croix je veux bien que tu me rééexpliques !^^

Ca concerne quelle colonne : qu'est ce que je dois recopier sur le fichier Etat des lieux si la croix est cochée côté fichier KIZEO ?

En attendant regarde si la modif en PJ te convient

Johan
 

Pièces jointes

  • Copie de Copie de Etat des lieux Pft - 2.xlsm
    35.5 KB · Affichages: 15

ACDEB

XLDnaute Nouveau
Oui désolé, c'était pas très clair... ^^

j'ai fait une mise en forme conditionnelle dans le fichier "Essai Macro KIZEO" qui m'alerte sur les dates.
Les croix présentes dans la colonne D correspondent aux dates présentes dans la colonne C (REV) (si la date à moins d'un mois de la date du jour, ou égale à la date du jour, une croix apparait). Les croix de la colonne F correspond aux dates de la colonne E (ATS), les croix de la colonne H correspondent aux dates de la colonne G (VT) et les croix de la colonne J correspondent aux dates de la colonne I (Organe de roulement).

Ce qu'il faudrait, c'est que quand il y a une croix, la date doit se copier dans la colonne REV VSP. Peu importe en somme que ce soit REV, ATS, VT, Organe de roulement... La date doit simplement apparaitre dans le fichier où il y a la macro. Pour m'alerter sur cette date.

Est ce que c'est plus clair ?...
 

Johan

XLDnaute Occasionnel
Aaaaah c'est une formule de type condition "SI;alors;sinon" pas une mise en forme conditionnelle !

Voila ton fichier, par contre je teste la croix que sur la colonne D vu que systématiquement si D est coché F J et H le sont aussi!... exact ?


Johan
 

Pièces jointes

  • Copie de Copie de Etat des lieux Pft - 2.xlsm
    34.8 KB · Affichages: 18

ACDEB

XLDnaute Nouveau
Euh oui pardon, c'est une formule ^^

Et non, pas systématiquement, là j'ai fait un exemple bidon, donc j'ai copié coller les valeurs à chaque fois, mais si D est coché, ce n'est pas forcément le cas pour F, J et H...
Compliqué non ? ^^

Il peut donc y avoir plusieurs dates dans la cellule de destination, comme il peut ne pas en avoir...
 

Johan

XLDnaute Occasionnel
Ok ben t'as juste à ajouter les autres conditions pour avoir toutes les croix.

Je te montre l'exemple pour COTE ROUTE et tu as juste à adapter pour le reste du tableau :

Code:
        If valeurCherchee = "VOIE COTE ROUTE" Then
               TargetWorkbook.Sheets("PLF").Range("B" & derLigneRoute) = ws.Cells(i, 2).Value
            If ws.Cells(i, 4) = "X" Then
               TargetWorkbook.Sheets("PLF").Range("C" & derLigneRoute) = ws.Cells(i, 3).Value
            End If
            If ws.Cells(i, 6) = "X" Then
               TargetWorkbook.Sheets("PLF").Range("C" & derLigneRoute) = ws.Cells(i, 5).Value
            End If
            If ws.Cells(i, 8) = "X" Then
               TargetWorkbook.Sheets("PLF").Range("C" & derLigneRoute) = ws.Cells(i, 7).Value
            End If
            If ws.Cells(i, 10) = "X" Then
               TargetWorkbook.Sheets("PLF").Range("C" & derLigneRoute) = ws.Cells(i, 9).Value
            End If

=> i,4 = colonne D donc tu recopies i,3 (C), i,6 = F, tu recopies i,5 donc E...
 

Discussions similaires

Réponses
9
Affichages
380

Statistiques des forums

Discussions
311 721
Messages
2 081 927
Membres
101 842
dernier inscrit
seb0390