VBA - Tilføjelse af ComboBox og tilhørende kode

Denne kode er relativt enkel og kræver ingen yderligere forklaring.

Indsæt disse to under i et generelt modul (fx Module1).

 Mulighed for eksplicit Sub CréerCombo (Lier som rækkefølge, Valgfri Sh som regneark, Valgfri Emplacement As Range) Dim Obj Som Objekt Dim Kode Som String Dim Ix Som Integer, Num Som String Hvis Sh er Intet, Sæt derefter Sh = ActiveSheet End Hvis Sh.Select Ix = ActiveSheet.OLEObjects.Count + 1 Num = "0" & ​​Ix: Num = Højre (Num, 2) 'Pour jusque 99 boutons Hvis Emplacement er ingenting derefter' emplacement par défaut Set Emplacement = ActiveCell End Hvis 'crée le bouton With Emplacement Set Obj = ActiveSheet.OLEObjects.Add (ClassType: = "Forms.Combobox.1", _ Link: = False, DisplayAsIcon: = False, Venstre: = Venstre, Top: =. Top, Bredde: =. Kolonnebredde * 5, 65, Højde: =. RowHeight) Obj.Name = "ComboB_" og Num End With 'propriétés du combo Med ActiveSheet.OLEObjects (Ix) .Placement = xlMoveAndSize .PrintObject = True .ListFillRange = Lier.Address End With' Le texte de la makrokode = vbCrLf & "Private Sub ComboB_" & Num & "_Change ()" & vbCrLf code = kode & "MsgBox" "Vous avez sélectionner la ligne" "& ComboB_" & Num & ".Text, " "ComboB_" & Num & "" "" & vbCrLf code = kode & "End Sub" 'Udvidet med makro og fin modulet med ActiveWorkbook.VBProject.VBComponents (ActiveSheet.Name) .CodeModule .insertlines .CountOfLines + 1, kode End With End Sub 

Download et eksempel til Excel 2007:

Download projekt:

  • Server 1: Tilføj Combo og code.xlsm
  • Privat server: Tilføj kombinations- og kode.xlsm

Forrige Artikel Næste Artikel

Top Tips