Hallo zusammen,
ich habe ein Formular gebaut mit 18 Checkboxen und 3 Buttons. Jede Checkbox soll für ein Dokument stehen und durch den CommandButton1 sollen die ausgewählten Dokumente gedruckt werden. Die Dateien liegen jeweils auf Sharepoint ab. Ich habe mir folgenden Code gebaut, welcher jedoch nicht funktioniert. Nach 2-3 Sekunden laden passiert einfach nichts mehr... Eigentlich will ich einfach nur die entsprechenden Dokumente hinter den Checkboxen drucken (Mehrfachauswahl soll möglich sein) und die Dokumente am besten gar nicht erst öffnen...
Ich brauche bitte Hilfe...
Private Sub CommandButton1_Click()
Call Drucken
End Sub
Sub Drucken()
Dim CheckBoxes(1 To 18) As Object
Dim HyperlinkAddresses(1 To 18) As String
Dim i As Integer
Dim wb As Workbook
Dim openedWb As Workbook
Set wb = ThisWorkbook
' Initialisiere die Checkbox-Objekte und Hyperlink-Adressen
For i = 1 To 18
Set CheckBoxes(i) = Me.Controls("CheckBox" & i)
' Hier die Hyperlink-Adressen eintragen
' Zum Beispiel: HyperlinkAddresses(i) = "https://Beispiel.sharepoint.com/..."
' Hier ist ein Beispiel für Checkbox 1:
HyperlinkAddresses(1) = "https://Beispiel.sharepoint.com/Checkliste.xlsx"
Next i
Application.ScreenUpdating = False
For i = 1 To 18
If CheckBoxes(i).Value = True Then
If HyperlinkAddresses(i) <> "" Then
' Hyperlink öffnen
Set openedWb = Workbooks.Open(HyperlinkAddresses(i))
' Drucke das erste Arbeitsblatt der geöffneten Arbeitsmappe
openedWb.Worksheets(1).PrintOut
openedWb.Close SaveChanges:=False
Else
MsgBox "Hyperlink-Adresse für CheckBox" & i & " nicht definiert.", vbExclamation, "Fehler"
End If
End If
Next i
Application.ScreenUpdating = True
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub CommandButton3_Click()
' Alle Checkboxen anwählen
Dim i As Integer
For i = 1 To 18
Me.Controls("CheckBox" & i).Value = True
Next i
End Sub
Private Sub CommandButton4_Click()
' Alle Checkboxen abwählen
Dim i As Integer
For i = 1 To 18
Me.Controls("CheckBox" & i).Value = False
Next i
End Sub
|