Copier/coller avec insertion entre 2 feuilles
Bonjour à tous
Je suis à la recherche d’une macro, je voudrais copier les données de la feuille « Matériels » vers la feuille « RESULTAT », cette feuille « RESULTAT » est déjà mise en page.
Chaque valeur de la 1ère feuille commence par un code et suivant le code les données seront rangée dans l’emplacement respectif.
Les codes des données vont de 1_ jusque 100_
La plage de données en largueur peut être plus petite ou plus grande suivant le cas idem pour le nombres de données
Merci d’avance pour votre aide qui est toujours très utiles.
Bonne soirée.
Bonsoir netparty,
voici ton fichier Excel modifié :
Ctrl e ➯ le dispatch a été fait !
Attention ! ton énoncé est incomplet car :
* en feuille "RESULTAT", il y a 3 lignes 04. :
"04. ECLAIRAGE INTERIEUR" ; "04. ECLAIRAGE EXTERIEUR" ; "04. ECLAIRAGE DE SECURITE"
tu n'as pas précisé comment répartir entre ces 3 lignes 04. les lignes "4_..." de la feuille "MATERIELS"
peut-être faudra-t-il ajouter une colonne en feuille "MATERIELS" pour l'indiquer ? (par exemple juste à droite de la colonne A)
pour l'instant, tout est sur la 1ère ligne 04.
* tu n'as pas précisé ce qu'il faut faire des lignes "9_..." de la feuille "MATERIELS"
pour l'instant, elles sont tout simplement ignorées, car 9 <> 92 ; et y'a seulement "92_" en 092.
mais si "92_" est une subdivision de "9_", alors "92_" et "9_" devront être regroupés en 092.
à te lire pour la suite.
dhany
Bonjour dhany
Un tout grand merci pour ton aide.
Ton fichier est super comme d'habitude mais je ne suis mal exprimé,
En fait je dois transposer mon 1er tableau vers RESULTAT donc copier toutes les lignes 4_ en dessous de "04. luminaires, 5_ en dessous de 5. commande éclairage et ainsi de suite.
Le tableau RESULTAT n'est pas encore complet car il doit aller jusque 100_
Est-ce plus clair ?
Merci
Et bonne journée.
Bonjour netparty,
j'ai bien lu ton post ; je crois pouvoir faire ta demande, du moins je vais essayer.
dhany
il me manque une info ; tu as écrit : « en dessous de 04. luminaires »,
mais c'est toujours ambigu :
sous 04. ECLAIRAGE INTERIEUR ?
sous 04. ECLAIRAGE EXTERIEUR ?
sous 04. ECLAIRAGE DE SECURITE ?
y'a pas 04. LUMINAIRES ; et c'est tout 04. ECLAIRAGE !
pour moi, LUMINAIRES = ECLAIRAGE ; mais ça serait clair si tu avais écrit :
« en dessous de 04. LUMINAIRES INTERIEURS » ou
« en dessous de 04. LUMINAIRES EXTERIEURS » ou
« en dessous de 04. LUMINAIRES DE SECURITE ».
donc sans plus d'info, j'ai un choix triple !
dhany
et pour 9_ aussi il manque une info !
c'est sous 092. ?
ou faut rajouter, après 08. DATA et avant 092. VIDEO... : 09. "quelque chose" ?
si oui, c'est quoi ce "quelque chose" : quel titre ?
dhany
re dhany
J'ai nettoyé mon fichier, le tableau devra ressembler a celui dans la 2eme feuille.
Merci
avec ton nouveau fichier, je comprends ça :
* ce qui est 04_Luminaire... va sous 4_Luminaire ; et aussi les autres 04_ tels que 04_downlight ou 4_Soquet
* ce qui est 05_... va sous 5_Commande d'éclairage
* ce qui est 06_... va sous 6_Incendie
* ce qui est 07_... va sous 7_CFO
* ce qui est 08_... va sous 8_CFA (et rien sous 080_... à _083...)
* ce qui est 92_... va sous 92_AI
* et ce qui est 9_ ? ça va où ? y'a pas de 9_... !

dhany
oui c'est ça
pour le 9 il n'y a pas encore de données c'est pour plus tard.
Donc je sais pas si c'est possible de laisser vide ou pas.
encore merci
Bonjour netparty,
[b]désolé, je n'ai pas pu faire ta demande à cause de Jean-Eric qui me cherche des noises :
j'ai été obligé d'y répondre au lieu de pouvoir continuer ton exo.[/b]
pour plus d'infos, tu peux lire ce post :
https://forum.excel-pratique.com/viewtopic.php?p=815302#p815302
(et tous ceux qui suivent)
dhany
@netparty
tu peux voir que ta feuille "RESULTAT" est inchangée ; va sur la feuille "Matériels" ; tu peux voir que j'ai presque tout effacé : il reste la ligne d'en-têtes et 27 lignes de données ; j'ai fait ça car c'est plus facile de voir si les résultats de la macro sont corrects.
Ctrl e ➯ travail effectué !
dhany
@netparty
Fichier test2.xlsm
tu peux voir que ta feuille "RESULTAT" est inchangée ; va sur la feuille "Matériels" ; tu peux voir que j'ai presque tout effacé : il reste la ligne d'en-têtes et 27 lignes de données ; j'ai fait ça car c'est plus facile de voir si les résultats de la macro sont corrects.
Ctrl e ➯ travail effectué !
tu aurais aussi pu faire Ctrl e en étant sur la feuille "RESULTAT" dhany
Bonjour dhany
Un grand merci pour ton aide, je test cela plus en profondeur mais a première vue vue c'est impect.
Passe un bon weekend et bonne continuation.
Re bonjour dhany
2 ou 3 questions qui me vienne sur le fichier :
Dans quel partie du code je peux jouer sur le décalage des cellules dans la feuille résultat.
Si maintenant dans ma feuille matériel j'ajoute des colonnes a droite, elle ne sont pas ajoutée dans la feuille resultat, crois tu que cela soit possible ?
Sinon rien à dire a chaque fois que tu m'as aidé, tes fichiers était nickel.
Bonne journée
@netparty
Fichier test2.xlsm
tu peux voir que ta feuille "RESULTAT" est inchangée ; va sur la feuille "Matériels" ; tu peux voir que j'ai presque tout effacé : il reste la ligne d'en-têtes et 27 lignes de données ; j'ai fait ça car c'est plus facile de voir si les résultats de la macro sont corrects.
Ctrl e ➯ travail effectué !
tu aurais aussi pu faire Ctrl e en étant sur la feuille "RESULTAT" dhany
Bonjour dhany
j'ai revu autrement le fichier, dans la feuille resultat j'ai prévu un tableau plus grand (15 étages) par sécurité.
Comme la feuille materiels peu varié soit moins ou plus d'étages est-il possible de copier uniquement toutes les valeurs a gauche de la colonne total.
pour le total j’insérais la formule manuellement le tableau resultat.
Merci
Bonne journée
Bonjour netparty,
[quote="dans ton post de 09:23, tu"]Un grand merci pour ton aide, je teste cela plus en profondeur mais à première vue c'est impec.
Passe un bon weekend et bonne continuation.[/quote]
merci pour ton retour !
dhany
[quote="dans ton post de 09:47, tu"]Dans quelle partie du code je peux jouer sur le décalage des cellules dans la feuille résultat ?[/quote]
je suppose que tu parles du décalage horizontal ; dans la feuille "RESULTAT", c'est organisé de cette façon :
1) "NOM DU CHANTIER" : en colonne A
2) 1ère colonne "MO - Heures" : en colonne E
3) pour chaque colonne "MO" suivante : 2 colonnes plus loin ➯ colonnes G ; I ; K ; M ; O
4) dernière colonne "TOTAL Heures" : 1 seule colonne plus loin ➯ colonne P
c'est pourquoi, dans le code VBA, en sub CpyData(), il y a : dh = dh + 2 + (j = 7)
tu a écrit :Si maintenant dans ma feuille matériel j'ajoute des colonnes à droite, elle ne sont pas ajoutées dans la feuille resultat, crois‑tu que cela soit possible ?
A) si c'est juste une modif ponctuelle que tu ne referas pas plus tard, ou alors très rarement, c'est possible : il faut d'abord, en feuille "RESULTAT", et avant la colonne "TOTAL Heures", ajouter 2 colonnes pour chaque colonne ajoutée en feuille "Matériels" ; ces deux colonnes étant, par exemple : "NIVEAU +4 - Quantités" & "MO - Heures".
B) si c'est une modif que tu veux faire régulièrement : j'vois mal comment automatiser c'qui précède ! et là, ça devient vraiment trop compliqué ! donc pour ce point B), je passe mon tour ! alors que pour le point A), tu peux envoyer ton nouveau fichier.
tu a écrit :Sinon rien à dire à chaque fois que tu m'as aidé, tes fichiers était nickel.
merci du retour !
dhany
[quote=dhany post_id=816807 time=1575125570 user_id=51200]
[quote="dans ton post de 09:47, tu"]Dans quelle partie du code je peux jouer sur le décalage des cellules dans la feuille résultat ?[/quote]
je suppose que tu parles du décalage horizontal ; dans la feuille "RESULTAT", c'est organisé de cette façon :
1) "NOM DU CHANTIER" : en colonne A
2) 1ère colonne "MO - Heures" : en colonne E
3) pour chaque colonne "MO" suivante : 2 colonnes plus loin ➯ colonnes G ; I ; K ; M ; O
4) dernière colonne "TOTAL Heures" : 1 seule colonne plus loin ➯ colonne P
c'est pourquoi, dans le code VBA, en sub CpyData(), il y a : dh = dh + 2 + (j = 7)
tu a écrit :Si maintenant dans ma feuille matériel j'ajoute des colonnes à droite, elle ne sont pas ajoutées dans la feuille resultat, crois‑tu que cela soit possible ?
A) si c'est juste une modif ponctuelle que tu ne referas pas plus tard, ou alors très rarement, c'est possible : il faut d'abord, en feuille "RESULTAT", et avant la colonne "TOTAL Heures", ajouter 2 colonnes pour chaque colonne ajoutée en feuille "Matériels" ; ces deux colonnes étant, par exemple : "NIVEAU +4 - Quantités" & "MO - Heures".
B) si c'est une modif que tu veux faire régulièrement : j'vois mal comment automatiser c'qui précède ! et là, ça devient vraiment trop compliqué ! donc pour ce point B), je passe mon tour ! alors que pour le point A), tu peux envoyer ton nouveau fichier.
tu a écrit :Sinon rien à dire à chaque fois que tu m'as aidé, tes fichiers était nickel.
merci du retour !
dhany
[/quote]
Merci dhany
Je regarde pour modifier mon fichier et je reviens vers toi
Merci
[quote="dans ton post de 16:31, tu"]Je regarde pour modifier mon fichier et je reviens vers toi[/quote]
ok, mais pour l'instant, je m'occupe du fichier de ton post de 13:20.
tu peux lire mes post précédents (si tu l'as pas déjà fait).
dhany
[quote=netparty post_id=816816 time=1575127878 user_id=65975]
[quote=dhany post_id=816807 time=1575125570 user_id=51200]
[quote="dans ton post de 09:47, tu"]Dans quelle partie du code je peux jouer sur le décalage des cellules dans la feuille résultat ?[/quote]
je suppose que tu parles du décalage horizontal ; dans la feuille "RESULTAT", c'est organisé de cette façon :
1) "NOM DU CHANTIER" : en colonne A
2) 1ère colonne "MO - Heures" : en colonne E
3) pour chaque colonne "MO" suivante : 2 colonnes plus loin ➯ colonnes G ; I ; K ; M ; O
4) dernière colonne "TOTAL Heures" : 1 seule colonne plus loin ➯ colonne P
c'est pourquoi, dans le code VBA, en sub CpyData(), il y a : dh = dh + 2 + (j = 7)
tu a écrit :Si maintenant dans ma feuille matériel j'ajoute des colonnes à droite, elle ne sont pas ajoutées dans la feuille resultat, crois‑tu que cela soit possible ?
A) si c'est juste une modif ponctuelle que tu ne referas pas plus tard, ou alors très rarement, c'est possible : il faut d'abord, en feuille "RESULTAT", et avant la colonne "TOTAL Heures", ajouter 2 colonnes pour chaque colonne ajoutée en feuille "Matériels" ; ces deux colonnes étant, par exemple : "NIVEAU +4 - Quantités" & "MO - Heures".
B) si c'est une modif que tu veux faire régulièrement : j'vois mal comment automatiser c'qui précède ! et là, ça devient vraiment trop compliqué ! donc pour ce point B), je passe mon tour ! alors que pour le point A), tu peux envoyer ton nouveau fichier.
tu a écrit :Sinon rien à dire à chaque fois que tu m'as aidé, tes fichiers était nickel.
merci du retour !
dhany
[/quote]
Merci dhany
Je regarde pour modifier mon fichier et je reviens vers toi
Merci
[/quote]
Voila dhany
j'ai ajouter les colonne dans la feuille résultat, est-ce possible que la colonne total ne soit pas recopiée ?
Par la même occasion pourrais-tu me dire quelle ligne je dois changer dans le code si je veux ajouter plus de colonne.
Merci d'avance.
[quote="dans ton post de 13:20, tu"]j'ai revu autrement le fichier ; dans la feuille resultat, j'ai prévu un tableau plus grand (15 étages) par sécurité.[/quote]
15 étages seulement ? c'est pas assez ! et la Tour infernale, alors ?
tu a écrit :est-il possible de copier uniquement toutes les valeurs à gauche de la colonne total ?
oui, c'est fait !
➯ ça donne exactement les mêmes résultats avec ou sans cette colonne total !
tu a écrit :pour le total, j’insérerai la formule manuellement dans le tableau resultat.
pourquoi faire ? c'est fait automatiquement !
Ctrl e (comme d'hab)
dhany