VBA rechercheV resultats multiples et variable
Résolu
titeufdu89
Messages postés
387
Statut
Membre
-
f894009 Messages postés 17417 Date d'inscription Statut Membre Dernière intervention -
f894009 Messages postés 17417 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un fichier de planning avec différents onglets :
- planning général
- planning par collaborateur
- planning pas magasin
Les 2 derniers onglet étant censés se mettre à jour automatiquement depuis le planning général, puis d'autres onglet sans importance ici.
Je ne parviens pas à mettre à jour mon onglet planning par magasin, j'ai créé un code (ci-dessous), qui fonctionne a moitié, car il m'affiche effectivement un collaborateur planifié sur le magasin seulement lorsqu'il y en a plusieurs, il ne mes les affiche pas... Une idée de l'endroit ou mon code ne joue pas?
Ci-joint mon fichier si ça peut aider a comprendre l'objet de ma demande
Par avance merci!
https://www.cjoint.com/c/GGdodiaV4tS
Jc
J'ai un fichier de planning avec différents onglets :
- planning général
- planning par collaborateur
- planning pas magasin
Les 2 derniers onglet étant censés se mettre à jour automatiquement depuis le planning général, puis d'autres onglet sans importance ici.
Je ne parviens pas à mettre à jour mon onglet planning par magasin, j'ai créé un code (ci-dessous), qui fonctionne a moitié, car il m'affiche effectivement un collaborateur planifié sur le magasin seulement lorsqu'il y en a plusieurs, il ne mes les affiche pas... Une idée de l'endroit ou mon code ne joue pas?
Ci-joint mon fichier si ça peut aider a comprendre l'objet de ma demande
Par avance merci!
Option Explicit
Option Compare Text
Sub maj()
Dim plage As Range
Dim c As Range
Dim p As Object
Dim b As Object
Dim i As Long
Dim r As Long
Dim col As Long
Dim valrech As String
Dim l_max As Long
Set p = Sheets("Planning par magasin")
Set b = Sheets("Planning")
l_max = b.Range("A1:A65536").Find("Totaux", lookat:=xlWhole).Row - 1
Set plage = p.Range("C3,C8,C13,C18,C23,C28,C33,C38,C43,C48,C53,C58,D3,D8,D13,D18,D23,D28,D33,D38")
For Each c In plage
r = c.Row
col = c.Column
valrech = p.Cells(r, 2).Value
For i = 4 To l_max Step 1
If b.Cells(i, col) Like valrech Then
b.Cells(i, 2).Copy c
End If
Next i
Next c
End Sub
https://www.cjoint.com/c/GGdodiaV4tS
Jc
1 réponse
-
Bonjour,
Votre fichier modifie, si j'ai bien compris, manquait le decalage pour ecrire la ou les personnes suivantes pour le meme magasin
https://www.cjoint.com/c/GGdpgglbaMf-
-
-
Merci,
J'ai tenté d'utiliser votre code pour faire une mise a jour automatique de chacune des cellules du planning mais il y a quelque chose que je dois faire de travers car la marco s'execute sans message d'erreur, mais aucune des données ne s'affiche :-/
https://www.cjoint.com/c/GGdqRw0iBhS -
Re,
Votre premier fichier avec toutes les colonnes jours, avec une facon de faire un peu differente de la votre, mais pas si eloignee
https://www.cjoint.com/c/GGdq7G84rSf -
-