Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1568to1572
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
VBA Userform Checkboxen per Makro erstellen
25.07.2017 14:13:43
Bernd
Servus zusammen,
ich bastle seit Stunden an einer Userform zur Erstellung standardisierter Fehlerberichte, die ich automatisch an einen definierten Mailverteiler weiterleiten möchte.
Als Beispiel mal meine neutrale Mappe:
https://www.herber.de/bbs/user/115045.xlsm
In der Userform Multipage sollen die Kollegen auf Seite 1 Basisinformationen zur Maschine und dem Fehlerbild schreiben. Das funktioniert soweit.
Auf MP Seite 2 sollen sie dann fallspezifische Dateianhänge hinzufügen (PDF und JPG). Das funktioniert auch schon soweit.
Auf Seite 3 soll ihnen dann eine Liste an Mailempfängern angezeigt werden, an die dieser Bericht gesendet werden soll. Und das funktioniert leider nicht mehr.
Ich habe den Code für den Mailverteiler bereits in einer anderen Mappe und dort funktioniert er, nur leider scheint das mit der Multipage und den Frames nicht zu funktionieren?
Der (vermutlich) relevante Code-Auszug (fett):

Private Sub UserForm_Initialize()
Set WS = ThisWorkbook.Sheets("Projekte")
intLZ = WS.Cells(Rows.Count, 1).End(xlUp).Row
' Projekte in Combobox1 laden
With Me.ComboBox1
For i = 1 To intLZ
.AddItem WS.Cells(i, 1).Value
Next i
End With
' Projekte in Combobox1 laden ENDE
' Info auflisten
Dim top, left, height, width As Integer
Dim myControl As Control
Me.MultiPage1.Pages(2).Visible = True
Me.MultiPage1.Value = 2
With Me
Set WS = ThisWorkbook.Sheets("Info")
intLZ = WS.Cells(Rows.Count, 1).End(xlUp).Row
'Startwerte Checkbox
left = 10
top = 10
height = 15
width = 150
With Me.Frame7
For i = 2 To intLZ
Set myControl = Controls.Add("Forms.Checkbox.1")
myControl.left = left
myControl.top = top
myControl.height = height
myControl.width = width
myControl.Name = "CheckboxAN" & i
myControl.Caption = WS.Cells(i, 3).Value
If WS.Cells(i, 5).Value  "" Then
myControl.Value = True
End If
top = top + 15
Next i
End With
Me.Frame7.height = top + 70
left = 10
top = 10
height = 15
width = 150
With Me.Frame8
For i = 2 To intLZ
Set myControl = Controls.Add("Forms.Checkbox.1")
myControl.left = left
myControl.top = top
myControl.height = height
myControl.width = width
myControl.Name = "CheckboxCC" & i
myControl.Caption = WS.Cells(i, 3).Value
If WS.Cells(i, 6).Value  "" Then
myControl.Value = True
End If
top = top + 15
Next i
End With
Me.Frame6.height = top + 100
Me.Frame8.height = top + 70
Me.Repaint
End With
' Info auflisten ENDE
' Startseite Multipage ist immer 0
Me.MultiPage1.Value = 0
Me.MultiPage1.Pages(1).Visible = False
Me.MultiPage1.Pages(2).Visible = False
' Startseite Multipage ist immer 0 ENDE
Me.DTPicker1.Value = Date
Me.DTPicker2.Value = Now
Me.CommandButton9.Enabled = False
Me.CommandButton11.Enabled = False
Me.CommandButton12.Enabled = False
'Me.CommandButton14.Enabled = False
Me.CommandButton16.Enabled = False
End Sub
Kann sich bitte jemand erbarmen und mir meinen Fehler aufzeigen?
Vielen Dank und Grüße
Bernd

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Userform Checkboxen per Makro erstellen
25.07.2017 15:46:42
mmat
Da fehlt ein Punkt

Set myControl = .Controls.Add("Forms.Checkbox.1")

Gelöst, Danke
25.07.2017 15:55:26
Bernd
Servus mmat,
kleine Ursache, riesen Auswirkung. Da hätte ich noch wochenlang suchen können.
Thema gelöst, vielen lieben Dank!
Grüße, Bernd
Anzeige

322 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige