Microsoft 365 Macro selon une liste deroulante

bisonfute

XLDnaute Nouveau
Bonjour tout le monde,
Et je vous remercie d avance pour tout les conseilles !
Je vous presente mon probleme j aimerai a l aide de n importe quel moyen que ce soit, avec une macro ou en vba peut importe.... transferez un groupe de collonne d une feuille a l autre ( ex: 18X4C) dependant de trois facteurs, les deux premier sont simples transfert de la page 1 a la page 2 ou 3 a 7 ou 6 a 1 peut importe. Le troisieme facteur complique le sujet en introduisant le type d equipement a transferez entre feuilles ( a peut pret 22 equipements different ) je resume si je veut faire un transfert de feuille 1 a feuille 2 pour machine a cafez selectionez 18X4C feuille 1 transferez a feuille 2 pareille de l autre cote feuille 2 a feuille 1 par contre si je choisir machine a lavez selectionez 17LX5C ect ect....
Merci pour votre aide je vous en suis reconnaissant d avance !
Bonne journee a vous
 

bisonfute

XLDnaute Nouveau
En gros fans le formulaire de changement j aimerai que mon formulaire arrive a comprendre que quand je selectione dans FROM il puisse savoir de quelle feuille ont parle dans TO pareille et que dans EQUIPMENTS il puisse comprendre quel cellules doivent etre selectionez
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Re,
D'après ce que j'ai compris, dans le formulaire "Line" veut dire "Sheets" ?
Donc "From Line 71" "To Line 72" veut dire : on transfert de la feuille 71 vers la feuille 72.
1- Mais que transfert t-on ? BLENDER2 ligne 7 à 26 vers L72 BLENDER 1 lignes 7 à 26 ?
2- Doit on écraser les données présentes en L72 ?
3- Doit on effacer les données de la feuille donnée dans FROM ?
4- Si LOADER est choisi, il est présent en L71 ligne27 mais absent des autres feuilles ( en L72 il n'y a que LOADER 7,2,3,4 ) Que fait on ?
5- Si dans FROM ou TO l'équipement est absent ( par exemple NOVATEC, ODAC, PALLET STATION, PELLETIZER, PUMP, SD ... ) que fait on ?
 

bisonfute

XLDnaute Nouveau
Pour repondre a la question oui L71 L72 ect correspond a sheets et oui pour la question de transfert quand tu met FROM L71 To L72 en gros c est censez copier collez de L71 a L72 et de L72 a L71 maintenant la partie complexe corresspont a l equipement ont dit que tu chois BLENDER cela voudra dire que tu copie les cellules 20LX5C de la feuille L71 pour les collez sur la feuille L72 sur les meme cellules et reciproquement pour L72 tu copie les cellules 20LX5C de la feuille L72 sur L71 et pour chaque equipements la meme procedure exemple: si tu choisis EXTRUDER dans le formulaire FROM L71 TO L78 il devra copier collez les cellules 17LX5C de la feuille L71 pour les collez aux meme cellule de L78 ret reciproquement de L78 a L71. Concernant les autre equipement de la liste n y prete pas attention a moin que tu en est besoin pour m aidez dans la formule mais le principe est le meme pour tout les equipements de la listes.
J espere avoir reussie a etre plus clair. Encore merci de prendre du temp pour m aidez ! Encore un gros merci a toi ! En soit le principe et simple c est du copier collez mais informatisez le tout est vraiment tres compliquez 😓
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
J'ai regardé plus précisément, et perso, je ne vois pas comment faire.
Beaucoup de plages à copier coller n'ont pas la même taille ni le même emplacement. Quelques exemples:
1689946894117.png

Ensuite, certaines feuilles sont protégées, d'autres non. Je ne vois pas la logique.
Donc, perso je ne vois pas de moyens de résoudre le problème, sauf usine à gaz inutilisable.
En espérant que quelqu'un de plus futé vois la logique dans tout ça.
 

bisonfute

XLDnaute Nouveau
Desolez de pas avoir ete suffisement claire je te renvoie un excel qui sera plus utilisable que celui que je t ai envoyez il y a une macro sur le bouton transferez qui montre ce que j aimerai faire mais cela ne prend pas en consideration mes feuilles et le nom de l equipement c est la ou je bloque
 

Pièces jointes

  • HELP ME 2.xlsm.xlsx
    127.6 KB · Affichages: 5

sylvanu

XLDnaute Barbatruc
Supporter XLD
Le nom de votre fichier est erroné "HELP ME 2.xlsm.xlsx" je l'ai renommé en "HELP ME 2.xlsm"
Votre code est issu de l'enregistreur et je ne comprends pas la logique.
Mais bon. En PJ un exemple de ce que je pense que vous voulez faire :
Si l'équipement est BLINDER, alors on copie "B7:E26" de la feuille "From" dans la feuille "To". Avec :
VB:
Sub Exemple()
    SheetFrom = "L" & [D11]                                             ' Page source
    SheetTo = "L" & [D18]                                               ' Page destination
    Equipement = [G11]                                                  ' Nom de l'équipement
    If Equipement Like "BLENDER" Then                                   ' Si c'est Blinder alors...
        Sheets(SheetTo).[B7:E26] = Sheets(SheetFrom).[B7:E26].Value     ' Copie données page source dans page destination
    End If
End Sub
Pour le reste c'est la même logique de copier coller.
Voir PJ macro Exemple.
 

Pièces jointes

  • HELP ME 2 V2.xlsm
    123 KB · Affichages: 4

bisonfute

XLDnaute Nouveau
je doit commencez par quoi...... juste je n ai pas de mot pour te dire merci enormement J ai tout de fois encore besoin de ton aide pour deux choses la premiere et desolez de t importunez avec sa c est que les donnez de l autre page doit etre aussi copier collez sur la feuille en gros quand tu transfert le blender de la page L71 a L72 le blender de L72 doit remplacez celui qui a etre transferez en L71. et mon dernier sujet c est pourrait tu m expliquez le "L" de la formule. Encore un gros merci a toi pour ton aide !
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
c est que les donnez de l autre page doit etre aussi copier collez sur la feuille en gros quand tu transfert le blender de la page L71 a L72 le blender de L72 doit remplacez celui qui a etre transferez en L71
Un code possible, voir PJ :
VB:
Sub Exemple()
    SheetFrom = "L" & [D11]                                             ' Page source
    SheetTo = "L" & [D18]                                               ' Page destination
    Equipement = [G11]                                                  ' Nom de l'équipement
    If Equipement Like "BLENDER" Then                                   ' Si c'est Blinder alors...
        Sheets(SheetFrom).[K7:N26] = Sheets(SheetFrom).[B7:E26].Value   ' Sauvegarde de la plage source
        Sheets(SheetFrom).[B7:E26] = Sheets(SheetTo).[B7:E26].Value     ' Transfert de To vers From
        Sheets(SheetTo).[B7:E26] = Sheets(SheetFrom).[K7:N26].Value     ' Transfert de la sauvegarde From vers To
        Sheets(SheetFrom).[K7:N26].Clear                                ' Effacement sauvegarde
    End If
End Sub

NB: Vous devriez lire ou relire mon post #9. A continuer comme ça avec un fichier dont plein de pages sont différentes, avec ou sans mot de passe, vous allez dans le mur. ( enfin c'est mon avis personnel au vu de votre code initial. ) Pour éviter les soucis il serait bon que toutes les feuilles soient strictement identiques, mêmes plages, mêmes intitulés ...
 

Pièces jointes

  • HELP ME 2 V3.xlsm
    123.3 KB · Affichages: 2

Discussions similaires

Statistiques des forums

Discussions
315 096
Messages
2 116 184
Membres
112 679
dernier inscrit
Yupanki