Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
792to796
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
792to796
792to796
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Codeanpassung

Codeanpassung
20.08.2006 18:02:28
Dirk
Hallo nochmal,
habe heute schon so nette u. schnelle Antworten erhalten.
Vielleicht geht meine Glückssträhne ja noch weiter:
Bisher nutze ich folgenden Code aus dem Blatt 'allg':

Private Sub CheckBox1_Click()   'fuer MA01
Dim s As String, ok As Boolean
''Prüfen, ob Zeilen sichtbar und Ergebnis umdrehen
ok = Not ThisWorkbook.Worksheets("Einsatzplan").Rows("1:1").Hidden
s = "Einsatzplan"
''Blattschutz aufheben
tabSchutzSetzen s, False
''Zeilen ein-/ausblenden
ThisWorkbook.Worksheets(s).Rows("1:19").Hidden = ok
''Blattschutz wieder setzen
tabSchutzSetzen s, True
End Sub

Diesen Code hätte ich nun gern um folgende Ergänzungen erweitert, scheitere allerdings schon im Ansatz kläglich:
1. Wenn das Häkchen in der CheckBox gesetzt wird, so soll in die Zelle X25 der Text "aktiv" geschrieben werden.
2. ERST NACHDEM in X25 das "aktiv" erscheint (also verbunden mit 1.), soll auch das dazugehörige Blatt (in diesem Bsp. 'MA01') sichtbar werden.
Kann mir jemand helfen?
MfG Dirk N.

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Codeanpassung
20.08.2006 18:20:04
Kay
Hallo Dirk,
warum erst das Aktiv in eine Zelle schreiben und dann diese Zelle abfragen?
Private Sub CheckBox1_Click() 'fuer MA01
Dim s As String, ok As Boolean
If CheckBox1.Value = False Then Exit Sub 'kein Hacken Ende der Sub
hier dein Code
MfG
Kay
AW: Codeanpassung
20.08.2006 18:37:14
Dirk
Hallo Kay,
über die Zelle X25 erfolgt eine Abfrage aus einer anderen Datei - daher dieses "aktiv". Somit benötige ich also dieses "aktiv" zwingend...
Vielleicht bist du so nett, den "Anfangscode" zu ergänzen - mir ist es als VBA-Laie leider nicht möglich, diesen Tipp zu realisieren.
Also schonmal vielen Dank für deine Unterstützung !
MfG Dirk N.
Anzeige
AW: Codeanpassung
20.08.2006 18:39:38
Dirk
Sorry, leider ist die Frage noch offen...
MfG Dirk N.
AW: Codeanpassung
20.08.2006 18:53:02
Kay
Hallo Dirk,
dann so:

Private Sub CheckBox1_Click()
Dim s As String, ok As Boolean
If CheckBox1.Value = False Then
Range("X25").Value = "inaktiv" ' oder was anderes
Exit Sub
Else
Range("X25").Value = "aktiv"
Dein Code
End If
End Sub

Kay
AW: Codeanpassung
20.08.2006 23:34:07
Dirk
Hallo Kay,
bitte entschuldige meine späte Antwort, ich hatte noch Besuch.
Danke für die Hilfe !!!
Allerdings ist die 2. Frage noch offen - sichtbar machen bzw. verbergen des Blattes 'MA01'.
Hier nochmal der bisherige Code aus 'allg', bereits erweitert mit deiner Lösung für Frage1:

Private Sub CheckBox1_Click()   'fuer MA01
Dim s As String, ok As Boolean
If CheckBox1.Value = False Then
Range("X25").Value = "inaktiv" ' oder was anderes
Exit Sub
Else
Range("X25").Value = "aktiv"
End If
''Prüfen, ob Zeilen sichtbar und Ergebnis umdrehen
ok = Not ThisWorkbook.Worksheets("Einsatzplan").Rows("1:1").Hidden
s = "Einsatzplan"
''Blattschutz aufheben
tabSchutzSetzen s, False
''Zeilen ein-/ausblenden
ThisWorkbook.Worksheets(s).Rows("1:19").Hidden = ok
''Blattschutz wieder setzen
tabSchutzSetzen s, True
End Sub

Hast du od. ein anderer Helfer dafür auch noch eine Idee?
MfG Dirk N.
Anzeige
AW: Codeanpassung
20.08.2006 23:45:06
Dirk
Hi,
habe gerade was passendes im Archiv gefunden:

Private Sub CheckBox1_Click()   'fuer MA01
Dim s As String, ok As Boolean
If CheckBox1.Value = False Then
Range("X25").Value = "inaktiv" ' oder was anderes
Sheets("MA01").Visible = xlSheetHidden
Exit Sub
Else
Range("X25").Value = "aktiv"
Sheets("MA01").Visible = True
End If
''Prüfen, ob Zeilen sichtbar und Ergebnis umdrehen
ok = Not ThisWorkbook.Worksheets("Einsatzplan").Rows("1:1").Hidden
s = "Einsatzplan"
''Blattschutz aufheben
tabSchutzSetzen s, False
''Zeilen ein-/ausblenden
ThisWorkbook.Worksheets(s).Rows("1:19").Hidden = ok
''Blattschutz wieder setzen
tabSchutzSetzen s, True
End Sub

Funzt bestens !!!
MfG Dirk N.
Anzeige
AW: Codeanpassung
21.08.2006 00:18:27
Dirk
KORREKTUR
Die ZEILE mit "Exit Sub" sollte natürlich gelöscht werden (Code bricht ansonsten an dieser Stelle ab).
MfG Dirk N.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige