Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1240to1244
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
Inhaltsverzeichnis

Code Probleme

Code Probleme
Norbert
Hi Leute
ich hab da etwas streß mit meiner Excelmappe. Ich blende einige Tabellen aus so das nur die da sind die ich brauche. Jetzt ist mein Problem das wenn die Tabellen ausgeblendet sind und ich will das datum über eine UF eintragen dann bekomme ich eine fehlermeldung. Es geht nur wenn alle Tabellen eingeblendet sind. Gibt es vieleicht noch eine möglichkeit den Code schneller zu machen? Bitte um hilfe.
mfg Norbert
Tabellen Ausblenden:
Sub Schicht_A()
Sheets("Schicht A Untereinander").Visible = True
Sheets("Schicht A").Visible = True
Sheets("Kleine Pläne Schicht A").Visible = True
Sheets("Alle Schichten").Visible = True
Sheets("Schicht B Untereinander").Visible = False
Sheets("Schicht B").Visible = False
Sheets("Kleine Pläne Schicht B").Visible = False
Sheets("Schicht C Untereinander").Visible = False
Sheets("Schicht C").Visible = False
Sheets("Kleine Pläne Schicht C").Visible = False
Sheets("Schicht D Untereinander").Visible = False
Sheets("Schicht D").Visible = False
Sheets("Kleine Pläne Schicht D").Visible = False
Sheets("Früh & Mittag").Visible = False
Sheets("F & M").Visible = False
End Sub Sub Schicht_B()
Sheets("Schicht A Untereinander").Visible = False
Sheets("Schicht A").Visible = False
Sheets("Kleine Pläne Schicht A").Visible = False
Sheets("Alle Schichten").Visible = True
Sheets("Schicht B Untereinander").Visible = True
Sheets("Schicht B").Visible = True
Sheets("Kleine Pläne Schicht B").Visible = True
Sheets("Schicht C Untereinander").Visible = False
Sheets("Schicht C").Visible = False
Sheets("Kleine Pläne Schicht C").Visible = False
Sheets("Schicht D Untereinander").Visible = False
Sheets("Schicht D").Visible = False
Sheets("Kleine Pläne Schicht D").Visible = False
Sheets("Früh & Mittag").Visible = False
Sheets("F & M").Visible = False
End Sub Sub Schicht_C()
Sheets("Schicht A Untereinander").Visible = False
Sheets("Schicht A").Visible = False
Sheets("Kleine Pläne Schicht A").Visible = False
Sheets("Alle Schichten").Visible = True
Sheets("Schicht B Untereinander").Visible = False
Sheets("Schicht B").Visible = False
Sheets("Kleine Pläne Schicht B").Visible = False
Sheets("Schicht C Untereinander").Visible = True
Sheets("Schicht C").Visible = True
Sheets("Kleine Pläne Schicht C").Visible = True
Sheets("Schicht D Untereinander").Visible = False
Sheets("Schicht D").Visible = False
Sheets("Kleine Pläne Schicht D").Visible = False
Sheets("Früh & Mittag").Visible = False
Sheets("F & M").Visible = False
End Sub Sub Schicht_D()
Sheets("Schicht A Untereinander").Visible = False
Sheets("Schicht A").Visible = False
Sheets("Kleine Pläne Schicht A").Visible = False
Sheets("Alle Schichten").Visible = True
Sheets("Schicht B Untereinander").Visible = False
Sheets("Schicht B").Visible = False
Sheets("Kleine Pläne Schicht B").Visible = False
Sheets("Schicht C Untereinander").Visible = False
Sheets("Schicht C").Visible = False
Sheets("Kleine Pläne Schicht C").Visible = False
Sheets("Schicht D Untereinander").Visible = True
Sheets("Schicht D").Visible = True
Sheets("Kleine Pläne Schicht D").Visible = True
Sheets("Früh & Mittag").Visible = False
Sheets("F & M").Visible = False
End Sub Sub Schicht_Früh_Mittag()
Sheets("Schicht A Untereinander").Visible = False
Sheets("Schicht A").Visible = False
Sheets("Kleine Pläne Schicht A").Visible = False
Sheets("Alle Schichten").Visible = True
Sheets("Schicht B Untereinander").Visible = False
Sheets("Schicht B").Visible = False
Sheets("Kleine Pläne Schicht B").Visible = False
Sheets("Schicht C Untereinander").Visible = False
Sheets("Schicht C").Visible = False
Sheets("Kleine Pläne Schicht C").Visible = False
Sheets("Schicht D Untereinander").Visible = False
Sheets("Schicht D").Visible = False
Sheets("Kleine Pläne Schicht D").Visible = False
Sheets("Früh & Mittag").Visible = True
Sheets("F & M").Visible = True
End Sub Sub Alle_Schichten()
Sheets("Schicht A Untereinander").Visible = True
Sheets("Schicht A").Visible = True
Sheets("Kleine Pläne Schicht A").Visible = True
Sheets("Alle Schichten").Visible = True
Sheets("Schicht B Untereinander").Visible = True
Sheets("Schicht B").Visible = True
Sheets("Kleine Pläne Schicht B").Visible = True
Sheets("Schicht C Untereinander").Visible = True
Sheets("Schicht C").Visible = True
Sheets("Kleine Pläne Schicht C").Visible = True
Sheets("Schicht D Untereinander").Visible = True
Sheets("Schicht D").Visible = True
Sheets("Kleine Pläne Schicht D").Visible = True
Sheets("Früh & Mittag").Visible = True
Sheets("F & M").Visible = True
End Sub Blattschutz:
Sub Blattschutz_Setzen()
Sheets("Schicht A Untereinander").Select
ActiveSheet.Protect ("merlin")
Sheets("Schicht A").Select
ActiveSheet.Protect ("merlin")
Sheets("Kleine Pläne Schicht A").Select
ActiveSheet.Protect ("merlin")
Sheets("Schicht B Untereinander").Select
ActiveSheet.Protect ("merlin")
Sheets("Schicht B").Select
ActiveSheet.Protect ("merlin")
Sheets("Kleine Pläne Schicht B").Select
ActiveSheet.Protect ("merlin")
Sheets("Schicht C Untereinander").Select
ActiveSheet.Protect ("merlin")
Sheets("Schicht C").Select
ActiveSheet.Protect ("merlin")
Sheets("Kleine Pläne Schicht C").Select
ActiveSheet.Protect ("merlin")
Sheets("Schicht D Untereinander").Select
ActiveSheet.Protect ("merlin")
Sheets("Schicht D").Select
ActiveSheet.Protect ("merlin")
Sheets("Kleine Pläne Schicht D").Select
ActiveSheet.Protect ("merlin")
Sheets("Früh & Mittag").Select
ActiveSheet.Protect ("merlin")
Sheets("F & M").Select
ActiveSheet.Protect ("merlin")
Sheets("Alle Schichten").Select
ActiveSheet.Protect ("merlin")
End Sub Code für Datum :
Private Sub CommandButton1_Click()
With Worksheets("Listen")
Call Blattschutz_Löschen
.Cells(1, 2) = ComboBox1.Value
kommentarlöschen
kommentarlöschen_1
kommentarlöschen_2
kommentarlöschen_3
kommentarlöschen_4
kommentar
kommentar_1
kommentar_2
kommentar_3
kommentar_4
Call Blattschutz_Setzen
End With
Me.Hide
Range("A3").Select
End Sub

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

Betreff
Benutzer
Anzeige
Code schneller
08.12.2011 15:26:12
Rudi
Hallo,
arbeite ohne Select und Activate dann sollte das auch ohne einblenden klappen.
z.B.
Sub Blattschutz_Setzen()
Sheets("Schicht A Untereinander").Protect ("merlin")
Sheets("Schicht A").Protect ("merlin")
Sheets("Kleine Pläne Schicht A").Protect ("merlin")
Sheets("Schicht B Untereinander").Protect ("merlin")
Sheets("Schicht B").Protect ("merlin")
Sheets("Kleine Pläne Schicht B").Protect ("merlin")
Sheets("Schicht C Untereinander").Protect ("merlin")
Sheets("Schicht C").Protect ("merlin")
Sheets("Kleine Pläne Schicht C").Protect ("merlin")
Sheets("Schicht D Untereinander").Protect ("merlin")
Sheets("Schicht D").Protect ("merlin")
Sheets("Kleine Pläne Schicht D").Protect ("merlin")
Sheets("Früh & Mittag").Protect ("merlin")
Sheets("F & M").Protect ("merlin")
Sheets("Alle Schichten").Protect ("merlin")
End Sub

Gruß
Rudi
Anzeige
AW: Code Probleme
08.12.2011 15:50:03
dan
Hallo Norbert,
falls es sicher ist, dass in dem Sheet-Name ein gewisser text immer vorkommen wird, koenntest Du die Sheets so ein/aus-blenden. So wird Dein Code uebersichtlicher sein.
Private Const SCHICHT_A As String = "Schicht A"
Public Sub Schicht_A_Visible()
Dim oneSheet As Worksheet
For Each oneSheet In ThisWorkbook.Worksheets
If (Strings.InStr(1, oneSheet.Name, SCHICHT_A) > 0) Then
oneSheet.Visible = True
Else
oneSheet.Visible = False
End If
Next oneSheet
End Sub
Gruss dan, cz.
AW: Code Probleme
09.12.2011 15:09:28
Norbert
Hi
hab den code getestet. Bekomme aber eine fehlermeldung. Hilfe
mfg Norbert
Anzeige
AW: Code Probleme
09.12.2011 15:40:45
dan
Hi Norbert,
dazu brauche ich mehr Info, poste bitte Dien Code. Wie lautet die Fehlermeldung-Message? Markirere im Code wo der Fehler passiert und an besten poste auch die Daten die Du benutzts.
Gruss dan, cz.
AW: Code Probleme
09.12.2011 16:07:43
Norbert
Hi
die datei kann ich nicht schicken die ist zu groß. 3 Tabellen sollen bleiben und der rest soll ausgeblendet werden. Das heist wenn ich auf Schicht A klicke sollen nur die Tabellen von A da sein und wenn ich auf Schicht B klicke nur die von B usw.
Die Fehlermeldung lautet:
Fehler beim Kompilieren:
Function oder Variable erwartet
Hier ein Bild der Meldung.
https://www.herber.de/bbs/user/77910.xls
mfg Norbert
Anzeige
AW: Code Probleme
09.12.2011 20:55:38
Rudi
Hallo,
da fehlen ".
besser ist das so:
Sub SchichtVisible(strSchicht As String)
Dim wks As Worksheet
For Each wks In Worksheets
wks.Visible = InStr(wks.Name, strSchicht)
Next
End Sub

Sub test()
SchichtVisible "Schicht_A"
End Sub

Gruß
Rudi
AW: Code Probleme
09.12.2011 21:55:03
dan
Hi Norbert,
hier ein Beispiel, wie man die Sheets ein/ausblenden kann:
https://www.herber.de/bbs/user/77911.xls
In dem Beispiel geht man davon aus dass der Sheet-Name einen 'Identifikator' aenthaelt. Die Identifikatoren definiert man im Code hier:
Private Const A_LAYER_IDENTIFIER As String = "A_"
Private Const B_LAYER_IDENTIFIER As String = "B_"
Private Const C_LAYER_IDENTIFIER As String = "C_"
Gruss dan, cz.
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige