Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema CheckBox
BildScreenshot zu CheckBox CheckBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen

Probleme bei Anklicken von Checkboxen


Betrifft: Probleme bei Anklicken von Checkboxen von: Dennis
Geschrieben am: 30.09.2019 10:13:16

Hallo zusammen,

ich habe ein Problem mit meinem Code. In eine Userform habe ich verschiedene Checkboxen eingebaut, welche der Anwender auswählen kann. Je nachdem welche Checkbox ausgewählt wird (können auch alle sein), soll das Programm bestimmte Daten aus einer Übersicht entnehmen und diese speichern. Wenn ich die Prozeduren einzeln testenlasse, funktioniert es wunderbar. Ich möchte aber ja das ganze über die Userform steuern. Hier kommt es zu dem Fehler "Object required"

Hier mein Code. Ich hoffe ihr könnt mir helfen

Sub Programm()
Dim Ordner As String

Ordner = ThisWorkbook.Path & "\Ablage"

Application.ScreenUpdating = False

If CheckBox3.Value = True Then
 
        Sheets("Sheet3").Select
          ActiveSheet.Range("$A$1:$AI$300").AutoFilter Field:=1, Criteria1:= _
              "*Bonus*"
          Range("A3:B300").Select
          Selection.Copy
          Sheets("Bonus").Select
          Range("B7").Select
              Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
              :=False, Transpose:=False
              
              'Reiter als PDF speichern
              Sheets("Bonus").ExportAsFixedFormat Type:=xlTypePDF, Filename:=Ordner & "\" &  _
Format(Date, "YYMMDD_") & "Bonus", _
              Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False,   _
 _
_
OpenAfterPublish:=False

    End If
    
If CheckBox4.Value = True Then

        Sheets("Sheet3").Select
          ActiveSheet.Range("$A$1:$AI$300").AutoFilter Field:=1, Criteria1:= _
              "*Zeiten*"
          Range("A3:B300").Select
          Selection.Copy
          Sheets("Zeiten").Select
          Range("N7").Select
              Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
              :=False, Transpose:=False
              
              'Reiter als PDF speichern
              Sheets("Zeiten").ExportAsFixedFormat Type:=xlTypePDF, Filename:=Ordner & "\" &  _
Format(Date, "YYMMDD_") & "Zeiten", _
              Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False,   _
 _
_
OpenAfterPublish:=False
End If

End Sub

  

Betrifft: AW: Probleme bei Anklicken von Checkboxen von: Nepumuk
Geschrieben am: 30.09.2019 10:17:21

Hallo Dennis,

welche Programmzeile markiert der Debugger?

Gruß
Nepumuk


  

Betrifft: AW: Probleme bei Anklicken von Checkboxen von: Dennis
Geschrieben am: 01.10.2019 09:22:55

Hallo Nepumuk,

er hielt immer bei "If CheckBox4.Value = True Then" aber es lag daran, dass ich den Code nicht in die Userform kopiert hatte :D Manchmal sind es doch die einfachsten Dinge.

Grüße
Dennis


  

Betrifft: AW: Probleme bei Anklicken von Checkboxen von: Werner
Geschrieben am: 30.09.2019 12:16:14

Hallo Dennis,

kann es sein, dass du den Code in einem allgemeinen Modul hast? Wenn ja, warum wenn du mit einer Userform arbeitest?

Du hast dann ja wohl auf der Userform eine Schaltfläche, mit der du den Code im allgemeinen Modul aufrufst. Pack den Code doch direkt ins Codefenster der Schaltfläche der Userform.

Und warum filterst du ab A1? So wie der Code aussieht würde ich mal vermuten, dass in Zeile 2 eine Überschrift steht und die Daten ab A3 beginnen.

Code ohne die ganzen Select:

Private Sub CommandButton1_Click()
Dim Pfad As String

Application.ScreenUpdating = False

If Me.CheckBox3.Value = True Then
    With Worksheets("Sheet3")
        .Range("$A$2:$AI$" & .Cells(.Rows.Count, "A").End(xlUp).Row).AutoFilter _
        Field:=1, Criteria1:="*Bonus*"
        With .AutoFilter.Range
            .Columns("A:B").Offset(1).Resize(.Rows.Count - 1).Copy
            Worksheets("Bonus").Range("B7").PasteSpecial Paste:=xlPasteValues
            Application.CutCopyMode = False
        End With
        If .AutoFilterMode Then .AutoFilterMode = False
        Pfad = ThisWorkbook.Path & "\" & "Ablage\" & Format(Date, "YYMMDD_") & "Bonus"
        Worksheets("Bonus").ExportAsFixedFormat Type:=xlTypePDF, Filename:=Pfad, _
        Quality:=xlQualityStandard, IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, OpenAfterPublish:=False
    End With
End If
End Sub
Gruß Werner


  

Betrifft: AW: Probleme bei Anklicken von Checkboxen von: Dennis
Geschrieben am: 01.10.2019 09:21:17

Hallo Werner,

das ist mir dann auch aufgefallen :) Hatte es zum Testen rauskopiert und dann vergessen wieder zurückzuschieben. Und danke für die Kürzung meines Codes. Bin noch am Anfang meiner VBA-Kenntnisse und hab es daher mit dem "select" so gemacht.

Grüße
Dennis


  

Betrifft: Gerne u. Danke für die Rückmeldung. o.w.T. von: Werner
Geschrieben am: 01.10.2019 14:01:49




Beiträge aus dem Excel-Forum zum Thema "Probleme bei Anklicken von Checkboxen"