Vba coller dans une feuille dont le nom dépend de la valeur d'une cellule

Résolu
noe2008 Messages postés 191 Statut Membre -  
noe2008 Messages postés 191 Statut Membre -
Bonjour les amis,
je travaille sur un classeur mais je suis un peu bloqué
je veux une macro qui a chaque fois exécutée effectue un collage par liaison de :

la cellule "P52" vers la feuille dont le nom est la valeur de la cellule "AC52" devant sa date correspondante "AB55" dans la colonne E

la cellule "P53" vers la feuille dont le nom est la valeur de la cellule "AC53" devant sa date correspondante "AB53" dans la colonne H

la cellule "P54" vers la feuille dont le nom est la valeur de la cellule "AC54" devant sa date correspondante "AB54" dans la colonne K

la cellule "P55" vers la feuille dont le nom est la valeur de la cellule "AC55 " devant sa date correspondante "AB55" dans la colonne N

le fichier joint pourra être mieux éclaircir

https://www.cjoint.com/doc/20_01/JAzay1MYW4W_essai.xlsm

Merci infiniment

Configuration: Windows / Chrome 79.0.3945.130

3 réponses

  1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour Noe,

    option explicit
    '-
    Sub affecter_qtt()
    Dim Lig As Byte, jour As Byte, Qtt As Single, Folio As String, ppX As String

    With Sheets("acc")
    For Lig = 52 To 55
    jour = Day(.Cells(Lig, "Q"))
    Qtt = .Cells(Lig, "P")
    Folio = .Cells(Lig, "ac")
    ppX = Choose(Lig - 51, "E", "H", "K", "N")

    With Sheets(Folio)
    .Cells(.Range("B7").Offset(jour).Row, ppX) = Qtt
    End With
    Next
    End With

    MsgBox "Report des Qtt effectué avec succès"
    End Sub


    la maquette
    https://mon-partage.fr/f/YXJ2eZmL/

    1
  2. ccm81 Messages postés 11033 Statut Membre 2 434
     
    > michel : ce matin, j'ai eu comme un doute, d'où mes deux questions

    > noe2008 : lorsqu'il s'agit de macro, il est impératif de donner la structure exacte des données, sinon, il y a un risque de passer à côté du problème
    En modifiant la macro de michel
    https://mon-partage.fr/f/XUrtMVig/
    il faudra certainement modifier le code ici
    ppX = Choose(Lig - 51, "E", "H", "K", "N")

    Cdlmnt
    1
    1. noe2008 Messages postés 191 Statut Membre 4
       
      Merci infiniment c'est exactement ce que j'ai cherché
      0
  3. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Bonjour

    1. Tu n'as que ces 4 feuilles A9, A10, A11, A12 ?
    2. Que veux tu dire par "avec liaison" ?

    Cdlmnt
    0
    1. noe2008 Messages postés 191 Statut Membre 4
       
      Mon classeur est plus compliqué que ça il comporte 24 feuilles j'ai seulement essayer de simplifier
      la Macro de Mr michel_m est étonnante il reste uniquement que les cellules des feuilles "A9" "A10" soient liées avec celles de la feuille "acc" par formule
      exemple : dans la cellule correspondante de A9 on devra avoir =acc!P52
      0
      1. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320 > noe2008 Messages postés 191 Statut Membre
         
        Mon classeur est plus compliqué que ça il comporte 24 feuilles j'ai seulement essayer de simplifier
        Donc tu m'as fait bosser pour rien BRAVO

        dans la cellule correspondante de A9 on devra avoir =acc!P52
        Tu demandais du VBA pour qu'on marque une formule? BRAVO

        la Macro de Mr michel_m est étonnante
        Fous toi de moins en plus! BRAVO

        Mon code fonctionne en correspondant à ta demande initiale qui s'avère être n'importe quoi
        C'est à désespérer d'^tre solidaire
        0