het doel van deze macro is om alle werkbladen te "listen"
om daarna de werkblad namen te kunnen gebruiken in een userform in de vorm van checkboxen
deze checkboxen wil ik aan kunnen vinken om later de aan gevinkte werkbladen te kunnen printen
wat er niet goed gaat is dat ik nu met deze samengestelde code
iedere keer een werkblad moet aanmaken om de code te laten werken
ik heb van alles geprobeerd om DestSh te omzeilen maar ik krijg het niet voor elkaar
de macro variabel DestSh gooit hier bij roet in het eten
wie kan me helpen
vr gr Tobo
om daarna de werkblad namen te kunnen gebruiken in een userform in de vorm van checkboxen
deze checkboxen wil ik aan kunnen vinken om later de aan gevinkte werkbladen te kunnen printen
wat er niet goed gaat is dat ik nu met deze samengestelde code
iedere keer een werkblad moet aanmaken om de code te laten werken
ik heb van alles geprobeerd om DestSh te omzeilen maar ik krijg het niet voor elkaar
de macro variabel DestSh gooit hier bij roet in het eten
wie kan me helpen
vr gr Tobo
Code:
Private Tck(10) As MSForms.CheckBox
Private Sub addCheckboxes()
UserForm1.Show
End Sub
Private Sub CommandButton1_Click()
Dim i As Integer
Dim Tck As MSForms.CheckBox
Dim offset As Integer: offset = 15
Dim sh As Worksheet
Dim [B]DestSh[/B] As Worksheet
On Error Resume Next
On Error GoTo 0
Application.DisplayAlerts = False
On Error Resume Next
Set [B]DestSh[/B] = ActiveWorkbook.Worksheets.Add ''geen sheet toevoegen [B]DestSh[/B] heeft voormij alleen waarde on de array te vullen
For Each sh In ActiveWorkbook.Worksheets
Application.DisplayAlerts = False
[B]DestSh[/B].Name = "Verzamelblad"
If IsError(Application.Match(sh.Name, _
Array([B]DestSh.Name[/B], "Data", "blad1"), 0)) Then ''enkele uitzonderingen maken
Set Tck = UserForm1.Controls.Add("Forms.Checkbox.1", "Checkbox" & i, True)
Tck.Top = offset
Tck.Left = 15
Tck.Width = 100
offset = offset + 15
Tck.Caption = sh.Name
End If
Next
End Sub