Bonjour,
J'étais déjà venu sur ce forum pour le même problème et je ne retrouve plus mon ancien post.
Mon problème est énoncé dans l'intitulé du sujet. Sur le site, j'ai vu que ceci devait me permettre de le résoudre :
Cependant, j'éprouve quelques difficultées : pour la ligne "curshname = ActiveSheet.Name", VB me dit que la variable "curshname" n'est pas définie. Je décide alors de supprimer cette ligne et de remplacer "curshname" par un nom de feuille pour la suite du programme et j'ai un autre problème : la variable "sh" n'est pas définie. Quelqu'un pourrait-il m'aider si possible en m'expliquant brièvement en quoi consiste les grandes lignes de ce programme afin que je puisse le modifier à ma guise ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 Sub FillCombo() Dim db As DAO.Database Dim rec As DAO.Recordset curshname = ActiveSheet.Name Set db = DAO.OpenDatabase(ThisWorkbook.Path & "\Membres1.mdb", False, False) Set rec = db.OpenRecordset("SELECT NomFamille FROM Membres WHERE DepartOuRegionTravail = 'WA'", DAO.dbOpenSnapshot) For Each sh In ActiveWorkbook.Sheets(curshname).Shapes If sh.Type = msoFormControl And sh.Name Like "Drop*" Then sh.Select Do While Not (rec.EOF) Selection.AddItem rec.Fields(0).Value rec.MoveNext Loop Exit For End If Next sh rec.Close db.Close Set rec = Nothing Set db = Nothing End Sub
Merci et bonne journée !
Partager