Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
22.11.2010 11:30:32 |
. |
|
|
|
22.11.2010 12:02:18 |
Severus |
|
|
|
22.11.2010 14:48:57 |
. |
|
|
Aw:Auswahlmöglichkeiten über UserForm |
22.11.2010 15:13:39 |
Severus |
|
|
|
23.11.2010 07:22:45 |
. |
|
|
|
23.11.2010 11:03:36 |
Severus |
|
|
|
23.11.2010 11:12:39 |
Severus |
|
|
|
23.11.2010 13:05:07 |
. |
|
|
Von:
Severus |
Datum:
22.11.2010 15:13:39 |
Views:
1091 |
Rating:
|
Antwort:
|
Thema:
Aw:Auswahlmöglichkeiten über UserForm |
. schrieb am 22.11.2010 14:48:57:
Severus schrieb am 22.11.2010 12:02:18:
Sub Tabellenblätter_ausblenden()
Dim LaufZahl As Long
Dim ctrName As String
Dim shtName As String
On Error GoTo Fehler
Application.ScreenUpdating = False
For LaufZahl = 1 To Sheets.Count
ctrName = "cbxP" & CStr(LaufZahl)
shtName = "P" & CStr(LaufZahl)
If Controls(ctrName).Value = True Then
Sheets(shtName).Visible = xlSheetVisible
Else
Sheets(shtName).Visible = xlSheetVeryHidden
End If
Next LaufZahl
Application.ScreenUpdating = True
Exit Sub
Fehler:
MsgBox "Sie hatten kein Tabellenblatt ausgewählt! Excel erlaubt nicht, dass alle Tabellenblätter ausgeblendet werden! Es wird daher das letzte Tabellenblatt sichtbar bleiben.", vbInformation, "Hinweis..."
End Sub
Severus
Und wie würde dann das laufen, wenn die Produkte alle verschiedene Namen haben? Zum Beispiel P1 entspricht eigentlich dem "Zulaufband" und die Checkbox = cbxZulaufband
oder P4 entspricht dem "Sortierer" und die Checkbox = cbxSortierer.
Sprich, wie läuft das, wenn mein "Produktname" und cbx"Produktname" immer ganz unterschiedlich sind und nicht immer nur P1, P2 usw. heißen? (Auch keine fortlaufende Zahl besitzen)
Entschuldige schon: Aber warum verd... sagst Du das nicht gleich?
Mit solchen Ungenauigkeiten machst Du unsereins völlig unnötig Arbeit!
Hier ist das weniger tragisch, aber denk bitte künftig daran, das Problem so zu schildern, wie es wirklich ist!
Für die Tabellenblätter verwendest Du einfach den Index statt des Namens. Der Index entspricht der Position des Arbeitsblattes Im Blattregister an der Unterseite der Arbeitsmappe, also dort, wo die Blattnamen angezeigt werden.
Die Checkboxen benennst Du bitte tatsächlich so wie Du es im Beispiel getan hast, also "cbxPn" wobei n die Zahl von 1 bis 8 ist.
Beachte: Die Name Eigenschaft ist hier gemeint! Nicht die Caption Eigenschaft, welche die sichtbare Bezeichnung auf der UserForm wiedergibt! Caption kannst Du dann benennen wie Du willst.
Dann heißt der Code einfach:
Sub Tabellenblätter_ausblenden()
Dim LaufZahl As Long
Dim ctrName As String
On Error GoTo Fehler
Application.ScreenUpdating = False
For LaufZahl = 1 To Sheets.Count
ctrName = "cbxP" & CStr(LaufZahl)
If Controls(ctrName).Value = True Then
Sheets(LaufZahl).Visible = xlSheetVisible
Else
Sheets(LaufZahl).Visible = xlSheetVeryHidden
End If
Next LaufZahl
Application.ScreenUpdating = True
Exit Sub
Fehler:
MsgBox "Sie hatten kein Tabellenblatt ausgewählt! Excel erlaubt nicht, dass alle Tabellenblätter ausgeblendet werden! Es wird daher das letzte Tabellenblatt sichtbar bleiben.", vbInformation, "Hinweis..."
End Sub
|
- 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
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- 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
|
|
22.11.2010 11:30:32 |
. |
|
|
|
22.11.2010 12:02:18 |
Severus |
|
|
|
22.11.2010 14:48:57 |
. |
|
|
Aw:Auswahlmöglichkeiten über UserForm |
22.11.2010 15:13:39 |
Severus |
|
|
|
23.11.2010 07:22:45 |
. |
|
|
|
23.11.2010 11:03:36 |
Severus |
|
|
|
23.11.2010 11:12:39 |
Severus |
|
|
|
23.11.2010 13:05:07 |
. |
|
|