Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

UserForm geöffnet/Excel bearbeiten

Forumthread: UserForm geöffnet/Excel bearbeiten

UserForm geöffnet/Excel bearbeiten
31.03.2021 13:34:47
Sonja
Hallo,
in meinem Tabellenblatt gibt es einen Button, über den eine UserForm (UF) " Aktion_RE" aufgerufen wird. Hier wiederum gibt es weitere CommandButtons, welche unterschiedliche UF´s aufrufen z.B. "neue Rechnung anlegen". Mein Ziel ist, während der geöffneten UF´s auch direkt in der Datei z.B. das Tabellenblatt zu wechseln, bzw. in einer externen Datei Arbeiten vorzunehmen zu können.
mein Code (Öffnen UF1):

Sub UserForm_Aktion_RE_starten()
UserForm_Aktion_RE.Show vbModeless
End Sub

Während die 1. UF geöffnet ist, klappt das mit dem Bearbeiten der Tabelle.
nächster Code (Öffnen UF2):

Sub UserForm_Rechnung_starten()
UserForm_Rechnung.Show vbModeless
End Sub

Jetzt sind 2 UF´s geöffnet - ich kann jetzt nicht mehr im Tabellenblatt oder in einer externen Tabelle Änderungen vornehmen.
Vielleicht hat jemand eine Idee :-)
LG
Sonja

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: UserForm geöffnet/Excel bearbeiten
31.03.2021 14:12:47
oraculix
ShowModal False
Eigenschaft der Userform

AW: UserForm geöffnet/Excel bearbeiten
31.03.2021 14:17:30
Sonja
PRIMA
hab ich mir schon gedacht, dass das ganz einfach ist.
Vielen Dank Oraculix

AW: UserForm geöffnet/Excel bearbeiten
31.03.2021 14:19:10
oraculix
Danke für die Rückmeldung
Anzeige
;
Anzeige

Infobox / Tutorial

UserForm in Excel öffnen und gleichzeitig bearbeiten


Schritt-für-Schritt-Anleitung

Um in Excel eine UserForm zu öffnen und gleichzeitig im Tabellenblatt oder in externen Dateien arbeiten zu können, musst du die UserForm mit der Eigenschaft vbModeless anzeigen. Hier ist eine einfache Anleitung:

  1. Öffne die Visual Basic for Applications (VBA) Umgebung:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Füge eine neue UserForm hinzu:

    • Rechtsklicke im Projektfenster auf "VBAProject (DeineDatei)" > Einfügen > UserForm.
  3. Füge CommandButtons hinzu:

    • Ziehe in die UserForm die gewünschten CommandButtons, um verschiedene Funktionen zu aktivieren.
  4. Code zum Öffnen der UserForm:

    • Verwende den folgenden VBA-Code, um die UserForm als nicht-modal zu starten:
    Sub UserForm_Aktion_RE_starten()
       UserForm_Aktion_RE.Show vbModeless
    End Sub
  5. Testen:

    • Schließe den VBA-Editor und kehre zu deinem Tabellenblatt zurück. Klicke auf den zugehörigen Button, um die UserForm zu öffnen.

Häufige Fehler und Lösungen

  • Problem: Nach dem Öffnen mehrerer UserForms kann die Bearbeitung im Tabellenblatt nicht mehr durchgeführt werden.

    • Lösung: Stelle sicher, dass du die UserForms mit vbModeless öffnest, wie im vorherigen Abschnitt beschrieben.
  • Problem: Die UserForm schließt sich unerwartet.

    • Lösung: Überprüfe, ob du Unload oder Hide in einem anderen Teil deines Codes verwendest.

Alternative Methoden

Falls du mehr Kontrolle über die Benutzeroberfläche benötigst, kannst du auch ein Modul verwenden, um die UserForm zu steuern. Hier ein Beispiel, wie du die UserForm über ein Modul öffnen kannst:

Sub OpenUserForm()
    UserForm_Aktion_RE.Show vbModeless
    ' Hier kannst du auch weitere Logik hinzufügen
End Sub

Praktische Beispiele

Angenommen, du möchtest eine Rechnung erstellen und gleichzeitig in einem anderen Tabellenblatt arbeiten:

  1. Erstelle eine UserForm für die Rechnungsstellung.
  2. Füge einen Button in die UserForm ein, der beim Klicken eine neue Rechnung generiert.
  3. Öffne die UserForm mit dem Code aus der Schritt-für-Schritt-Anleitung.

Jetzt kannst du die UserForm nutzen, während du auch in deinem Tabellenblatt eine andere Rechnung erstellst oder Daten bearbeitest.


Tipps für Profis

  • Nutze Fehlerbehandlungsroutinen, um sicherzustellen, dass deine UserForms stabil laufen.
  • Experimentiere mit Steuerelementen in der UserForm, um die Benutzererfahrung zu verbessern.
  • Verwende Variablen in deinem Code, um Daten zwischen UserForms zu übergeben.

FAQ: Häufige Fragen

1. Warum kann ich nicht im Tabellenblatt arbeiten, wenn eine UserForm geöffnet ist? Wenn die UserForm als modal geöffnet wird (Standardverhalten), blockiert sie die Interaktion mit anderen Excel-Fenstern. Verwende vbModeless, um dies zu vermeiden.

2. Wie kann ich mehrere UserForms gleichzeitig öffnen? Du kannst mehrere UserForms mit dem vbModeless-Argument öffnen, indem du für jede UserForm einen eigenen Startcode schreibst.

3. Was ist der Unterschied zwischen modal und modeless? Eine modale UserForm blockiert die Interaktion mit anderen Fenstern, während eine nicht-modale (modeless) UserForm dies nicht tut, sodass du weiterhin in anderen Bereichen von Excel arbeiten kannst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige