XL 2010 RESOLU Reconnaître puis copier coller une plage dans une autre feuille

ymanot

XLDnaute Occasionnel
Bonjour le forum, Bonjour les Barbatrucs,
sur le document ci joint j ai besoin d 'une formule hors macro capable de copier toute une ligne dans la bonne feuille a partir de l'information d'un menu déroulant saisi en colonne A "affectation" de ma feuille "tri 3E".

par exemple si je saisie 3e3 alors la ligne se copiera directement sur la feuille "3e3"
En outre j ai besoin dans le meme temps de la meme manipulation si je dois a nouveau basculer une ligne de la feuille "3e3" vers la feuille "3e4". et dans ce cas la saisie sera modifiée sur toutes les feuilles.

Précision je réussi à faire la première manipulation avec
SI(ESTNUM(TROUVE("3e3";'tri 3E'!$A$2;1));'tri 3E'!A2;"-")
Mais c'est l'interaction entre les feuilles qui me pose probleme.



merci pour vos réponses
thierry
 

Pièces jointes

  • repart classe 2020.xlsx
    42.6 KB · Affichages: 13
Dernière édition:

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonjour @ymanot , @job75, le Forum

Voici mon interprétation VBA sur évènement WorkSheet_Change.
Il gère aussi la réallocation d'onglet.... En "déplaçant" la ligne sur la bon 3eX ...

1592805076657.png


Bonne Découverte et journée !
@+Thierry
 

Pièces jointes

  • XLD_ymanot_repart_classe_2020_v00.xlsm
    57.5 KB · Affichages: 5

job75

XLDnaute Barbatruc
Re, salut _Thierry,

Bon s'il s'agit de filtrer le tableau de la feuille "tri 3E" placez cette macro dans ThisWorkbook :
VB:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
With Sheets("tri 3E").[A1].CurrentRegion
    If Application.CountIf(.Columns(1), Sh.Name) = 0 Then Exit Sub
    Application.ScreenUpdating = False
    Sh.Cells.Delete 'RAZ
    .AutoFilter 1, Sh.Name 'filtre automatique
    .Copy Sh.[A1] 'copier-coller
    .AutoFilter
End With
Sh.Columns.AutoFit 'ajustement largeurs
End Sub
Elle se déclenche quand on active une feuille quelconque.

A+
 

Pièces jointes

  • repart classe 2020(1).xlsm
    55.2 KB · Affichages: 9

_Thierry

XLDnaute Barbatruc
Repose en paix
Salut Job75

Soit je n'ai rien compris à la demande de Ymanot, soit quelque chose m'échappe, mais je ne comprends pas du tout le but recherché dans ton exemple avec AutoFiler et Delete de SH, là je reste bouche bée ! LoL

Chez moi j'ai beau changer et activer chacune des feuilles mais apparemment rien ne se passe ...

Bonne journée
@+Thierry
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Ah alors ca ne le fait pas ou pas complètement ...
J'ai essayé de changer dans Tri 3E la cellule A2 de 3e6 à 3e7 et j'ai la ligne dans 3e6 et ....... après avoir été deux fois dans 3e7 elle est apparue aussi ... Mais toujours existante en 3e6...

@+Thierry
 

job75

XLDnaute Barbatruc
Quand il n'y a pas d'élèves pour la classe en effet la feuille n'est pas modifiée.

Si l'on veut que la feuille récupère alors le tableau vide il faut modifier le test du début, fichier (2) :
VB:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
With Sheets("tri 3E").[A1].CurrentRegion
    If Not Sh.Name Like "3e#" Then Exit Sub
    Application.ScreenUpdating = False
    Sh.Cells.Delete 'RAZ
    .AutoFilter 1, Sh.Name 'filtre automatique
    .Copy Sh.[A1] 'copier-coller
    .AutoFilter
End With
Sh.Columns.AutoFit 'ajustement largeurs
End Sub
 

Pièces jointes

  • repart classe 2020(2).xlsm
    54.3 KB · Affichages: 5

ymanot

XLDnaute Occasionnel
Bonjour le fil,
Bonjour les barbatrucs
Bonjour job 75 et thierry (dans l'ordre car lorsque je lis job 75 je me dis que ce Monsieur m'a souvent aidé...et ca fait plaisir).
Vous êtes dans le vrai tous les deux!
pour la répartition de la feuille "tri 3e " vers les autres ca marche super dans les deux versions.

Maintenant pour vous laissez comprendre ma reflexion.
Lorsque nous faisons une répartition d eleves dans des classes il y a toujours plusieurs personnes qui ne sont pas d accord. Aussi j ai besoin d avoir la possibilité de retour en arrière.
Ainsi si je sélectionne un élève dans la feuille"tri 3e" pour l'affeter en 3e7, mais qu'ensuite une personne me dise NON ! il doit aller en 3e5 je dois être capable de le basculer dans l autre classe et aussi qu'il disparaisse de l ancienne classe de destination sans pour autant disparaitre de la feuille de tri 3E.
Esperant avoir été plus clair
thierry
 

ymanot

XLDnaute Occasionnel
Dans ce cas peux tu ajouter une fonction qui permette la réaction suivante :

Pour modifier une décision si je sélectionne N/A en feuile "tri 3e" (pour non attribué) pour la ligne concernée alors le nom disparait des autres feuilles.

ex : j ai selectionné dans la feuille "tri 3e" la classe "3e7" mais pour une raison x je dois modifier ce choix alors je selectionne N/A sur ma feuille "tri 3e" et le nom disparait de ma feuille "3e7" idem pour chacune des feuilles classe.

Pour le moment j ai inscrit les classes à vide en bas de la liste... y a til une meilleure solution ?
merci
 

Pièces jointes

  • repart classe 2020(1) job75.xlsm
    58.4 KB · Affichages: 2
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 194
Messages
2 086 068
Membres
103 110
dernier inscrit
Privé