Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Multipage, Pages ein und ausblenden!

Forumthread: Multipage, Pages ein und ausblenden!

Multipage, Pages ein und ausblenden!
Lisa
Hallo zusammen
ich benötige bitte eure Hilfe, da ich in der Recherche nichts zu meiner Frage finde.
In einer Userform befindet sich eine Multipage mit drei Pages und einer TextBox!
Die Userform startet:
Private Sub UserForm_Initialize()
MultiPage1.Pages(0).Visible = True
MultiPage1.Pages(1).Visible = False
MultiPage1.Pages(2).Visible = False
End Sub
Über die TextBox1 möchte ich die Sichtbarkeit der Pages steuern:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1 = 1 Then
MultiPage1.Pages(1).Visible = True
ElseIf TextBox1 = 2 Then
MultiPage1.Pages(1).Visible = True
MultiPage1.Pages(2).Visible = True
End If
End Sub
Also, gebe ich in die TextBox1 eine 1 ein, zeigt sich die Page1,
gebe ich in die TexBox1 eine 2 ein zeigt sich die Page1 und die Page2
Nun zu meinem Anliegen,
die Pages lassen sich so anzeigen aber nicht ändern,
Gebe ich nun nach der 2 wieder eine 1 in die TextBox1 ein, wird die Page2 nicht wieder ausgeblendet!
das sollte aber gern so sein und auch für evtl weiter Pages!
Hat hierzu jemand eine Idee und kann helfen?
LG Lisa
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Multipage, Pages ein und ausblenden!
07.02.2012 13:20:09
Rudi
Hallo,
als Anregung:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
With MultiPage1
Select Case CInt(TextBox1)
Case 1
.Pages(1).Visible = True
.Pages(2).Visible = False
Case 2
.Pages(1).Visible = False
.Pages(2).Visible = True
Case 3
.Pages(1).Visible = True
.Pages(2).Visible = True
End Select
End With
End Sub

Gruß
Rudi
Anzeige
AW: Multipage, Pages ein und ausblenden!
07.02.2012 14:02:08
Lisa
Hallo Rudi, wieder einmal den allerherzlichsten Dank an dich!
Das ist genau das was ich gesucht habe!
LG Lisa
;
Anzeige

Infobox / Tutorial

Multipage in Excel: Seiten ein- und ausblenden


Schritt-für-Schritt-Anleitung

Um in einer Userform mit einer Multipage die Sichtbarkeit der Pages über eine TextBox zu steuern, kannst Du die folgenden Schritte durchführen:

  1. UserForm erstellen: Füge eine UserForm in Deinem Excel VBA-Projekt hinzu.

  2. Multipage hinzufügen: Ziehe ein Multipage-Steuerelement auf die UserForm. Standardmäßig werden drei Pages hinzugefügt.

  3. TextBox hinzufügen: Füge eine TextBox zu Deiner UserForm hinzu, um die Eingabe zu ermöglichen.

  4. Code für die Initialisierung: Verwende den folgenden VBA-Code, um die Sichtbarkeit der Pages beim Start der UserForm zu steuern:

    Private Sub UserForm_Initialize()
       MultiPage1.Pages(0).Visible = True ' Page1 sichtbar
       MultiPage1.Pages(1).Visible = False ' Page2 unsichtbar
       MultiPage1.Pages(2).Visible = False ' Page3 unsichtbar
    End Sub
  5. Code für die TextBox: Füge den folgenden Code in das TextBox1_Exit-Ereignis ein, um die Sichtbarkeit basierend auf der Benutzereingabe zu ändern:

    Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
       With MultiPage1
           Select Case CInt(TextBox1)
               Case 1
                   .Pages(0).Visible = True ' Page1 sichtbar
                   .Pages(1).Visible = False ' Page2 unsichtbar
                   .Pages(2).Visible = False ' Page3 unsichtbar
               Case 2
                   .Pages(0).Visible = True ' Page1 sichtbar
                   .Pages(1).Visible = True ' Page2 sichtbar
                   .Pages(2).Visible = False ' Page3 unsichtbar
               Case 3
                   .Pages(0).Visible = True ' Page1 sichtbar
                   .Pages(1).Visible = True ' Page2 sichtbar
                   .Pages(2).Visible = True ' Page3 sichtbar
           End Select
       End With
    End Sub

Häufige Fehler und Lösungen

  • Problem: Page2 wird nicht ausgeblendet, wenn nach der Eingabe "2" wieder "1" eingegeben wird.

    • Lösung: Stelle sicher, dass die Sichtbarkeit jeder Page im Select Case-Block korrekt gesetzt ist, wie im oben genannten Code gezeigt.
  • Problem: Die UserForm reagiert nicht auf die Eingabe in der TextBox.

    • Lösung: Überprüfe, ob das TextBox1_Exit-Ereignis korrekt implementiert ist und dass die UserForm die richtige Initialisierung hat.

Alternative Methoden

Eine alternative Methode, um die Sichtbarkeit der Pages in einer Multipage zu steuern, wäre die Verwendung von Schaltflächen (Buttons). Du könntest für jede Page einen Button hinzufügen, der die entsprechende Page sichtbar macht, wenn er geklickt wird. Hier ein Beispiel:

Private Sub CommandButton1_Click() ' Button für Page1
    MultiPage1.Pages(0).Visible = True
    MultiPage1.Pages(1).Visible = False
    MultiPage1.Pages(2).Visible = False
End Sub

Private Sub CommandButton2_Click() ' Button für Page2
    MultiPage1.Pages(0).Visible = True
    MultiPage1.Pages(1).Visible = True
    MultiPage1.Pages(2).Visible = False
End Sub

Praktische Beispiele

  • Beispiel 1: Du möchtest verschiedene Eingabemasken für unterschiedliche Datentypen erstellen. Verwende die Multipage, um alle Eingaben zu strukturieren und nur die benötigten Seiten sichtbar zu machen.
  • Beispiel 2: Ein Formular für die Eingabe von Kundendaten kann in verschiedene Seiten unterteilt werden: Persönliche Daten, Adressdaten, Zahlungsinformationen. So bleibt das Formular übersichtlich.

Tipps für Profis

  • Nutze die .Pages-Eigenschaft, um gezielt Seiten in der Multipage zu steuern. Dies ist besonders nützlich, wenn Du mehrere Pages hast und die Sichtbarkeit dynamisch anpassen möchtest.
  • Experimentiere mit der Pages-Menüleiste einblenden-Option, um eine bessere Benutzeroberfläche zu schaffen.
  • Achte darauf, dass die Datenvalidierung in der TextBox implementiert wird, um sicherzustellen, dass nur gültige Eingaben akzeptiert werden.

FAQ: Häufige Fragen

1. Was ist .pages?
.Pages ist eine Eigenschaft des Multipage-Steuerelements in Excel VBA, die die einzelnen Seiten innerhalb der Multipage darstellt.

2. Wie funktioniert .pages?
Mit der .Pages-Eigenschaft kannst Du auf die einzelnen Seiten der Multipage zugreifen und deren Sichtbarkeit, Titel und andere Eigenschaften steuern.

3. Kann ich die Seiten in einer Multipage verschieben?
Ja, Du kannst die Seiten innerhalb der Multipage verschieben, indem Du die Reihenfolge der Pages im Designer änderst oder über VBA anpasst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige