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

Résolu/Fermé
noe2008 Messages postés 183 Date d'inscription vendredi 18 juillet 2008 Statut Membre Dernière intervention 9 novembre 2023 - 25 janv. 2020 à 01:31
noe2008 Messages postés 183 Date d'inscription vendredi 18 juillet 2008 Statut Membre Dernière intervention 9 novembre 2023 - 25 janv. 2020 à 19:44
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

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié le 25 janv. 2020 à 09:52
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
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
Modifié le 25 janv. 2020 à 19:20
> 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
noe2008 Messages postés 183 Date d'inscription vendredi 18 juillet 2008 Statut Membre Dernière intervention 9 novembre 2023 4
25 janv. 2020 à 19:44
Merci infiniment c'est exactement ce que j'ai cherché
0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
25 janv. 2020 à 09:57
Bonjour

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

Cdlmnt
0
noe2008 Messages postés 183 Date d'inscription vendredi 18 juillet 2008 Statut Membre Dernière intervention 9 novembre 2023 4
Modifié le 25 janv. 2020 à 11:23
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
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303 > noe2008 Messages postés 183 Date d'inscription vendredi 18 juillet 2008 Statut Membre Dernière intervention 9 novembre 2023
25 janv. 2020 à 11:45
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