Thema Datum  Von Nutzer Rating
Antwort
30.10.2020 13:39:47 Detlef
NotSolved
30.10.2020 13:49:16 Gast79008
NotSolved
02.11.2020 06:47:46 Detlef
NotSolved
02.11.2020 08:33:58 Gast79008
NotSolved
30.10.2020 18:07:16 xlKing
NotSolved
30.10.2020 18:34:38 xlKing
NotSolved
02.11.2020 06:43:44 Gast60214
NotSolved
02.11.2020 06:46:03 Gast90183
NotSolved
03.11.2020 01:02:48 xlKing
NotSolved
03.11.2020 02:13:06 xlKing
NotSolved
30.10.2020 18:28:18 Gast35120
NotSolved
30.10.2020 19:34:49 volti
NotSolved
02.11.2020 06:48:36 Detlef
NotSolved
Blau Optimierung VBA-Code
02.11.2020 11:08:45 volti
NotSolved
02.11.2020 11:15:05 Detlef
NotSolved
02.11.2020 11:16:42 Detlef
NotSolved

Ansicht des Beitrags:
Von:
volti
Datum:
02.11.2020 11:08:45
Views:
486
Rating: Antwort:
  Ja
Thema:
Optimierung VBA-Code

Hallo Detlef,

wenn ich das richtig sehe, ist der Code in der angegebenen Datei geschützt :-(

Auch kann ich Deinem hier geposteten Code in den einzelnen Sub's nicht ganz folgen. Obwohl der Haken z.B. gesetzt ist, wird immer an der gleichen Stelle "Haken nicht gesetzt" rausgegeben bzw. umgekehrt. Der Button-Zustand wird in einer globalen Variablen (insgesamt viele) festgehalten. Wozu?

Das teilweise Ausblenden einiger Zeilen basiert auf einem merkwürdigem Code teilweise abhängig von Checkbox2 teilweise von der eigenen Checkbox.

Naja, die Reduzierung von Code basierend auf Deinen Code, wozu immer er auch gebraucht wird, kannst Du z.B. wie nachfolgend beschrieben angehen.

De Idee hierbei ist, dass gemeinsamer Code in nur einer Functon bearbeitet wird....

Schau mal, ob Du damit etwas anfangen kannst.

Dim globalBoolCheckBoxAusgewählt(200) As Boolean
 
Private Sub CheckBox11_Click()
  If GetCheckBox(CheckBox1) Then Rows("92").Hidden = True   'Ist Checkbox angehakt?
End Sub

Private Sub CheckBox2_Click()
  If GetCheckBox(CheckBox2) Then Rows("18:19").Hidden = True
End Sub

Private Sub CheckBox3_Click()
  If GetCheckBox(CheckBox3) Then Rows("20").Hidden = True
End Sub

Private Sub CheckBox4_Click()
  If GetCheckBox(CheckBox3) Then Rows("20").Hidden = True
End Sub
  
Private Sub CheckBox5_Click()
  GetCheckBox CheckBox5
End Sub

Private Sub CheckBox6_Click()
  GetCheckBox CheckBox6
End Sub

'usw.....
 
Function GetCheckBox(oCheckbox As Object) As Boolean
'Grundfunktion einer jeden Checkbox hier abhandeln
'und zurückgeben, ob Control angehakt

 With oCheckbox
   If .Caption = Chr$(163) Then
      .Caption = "R"
      GetCheckBox = True
      Range("B2") = "Haken gesetzt"
   Else
      .Caption = Chr$(163)
      GetCheckBox = False
      Range("B2") = "Haken nicht gesetzt"
   End If
   globalBoolCheckBoxAusgewählt(Val(Replace(.Name, "CheckBox", ""))) = GetCheckBox
 End With

End Function

viele Grüße

Karl-Heinz


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
30.10.2020 13:39:47 Detlef
NotSolved
30.10.2020 13:49:16 Gast79008
NotSolved
02.11.2020 06:47:46 Detlef
NotSolved
02.11.2020 08:33:58 Gast79008
NotSolved
30.10.2020 18:07:16 xlKing
NotSolved
30.10.2020 18:34:38 xlKing
NotSolved
02.11.2020 06:43:44 Gast60214
NotSolved
02.11.2020 06:46:03 Gast90183
NotSolved
03.11.2020 01:02:48 xlKing
NotSolved
03.11.2020 02:13:06 xlKing
NotSolved
30.10.2020 18:28:18 Gast35120
NotSolved
30.10.2020 19:34:49 volti
NotSolved
02.11.2020 06:48:36 Detlef
NotSolved
Blau Optimierung VBA-Code
02.11.2020 11:08:45 volti
NotSolved
02.11.2020 11:15:05 Detlef
NotSolved
02.11.2020 11:16:42 Detlef
NotSolved