UserForm Als Menü

valeripf

Erfahrenes Mitglied
Hi

Ich beutze UserForm1 als Meü in Tabelle

ich habe dafür Code das Offen Userform aufgeht und Tabelle Scrollen kann

Code:
Private Sub Workbook_Open()
UserForm1.Show (0)
End Sub

das Problem ist wenn ich andere Tabelle aufmache das menü geht menü (Userform1) geht auch auf

gebst andere Möglichkeit Meü(UserForm1) Fest in die Tabelle zu ankern
 
WORKBOOK = Arbeitsmappe
WORKSHEET = Tabelle

Die Arbeitsmappe ist quasi die gesamte Datei mit allen darin enthaltenen Tabellen. Je nachdem wie du den Code eingebunden hast, bezieht sich das dann natürlich auf alles was du öffnest.

Wo soll das "Menü" denn überall zu sehen sein bzw. wann und wo genau soll es eingeblendet werden?
 
zuerst sorry für viel Fehler meine Tastatur gibt lagsam geist auf

der Menü soll dei Offnen die Execel Datei z.B xyz.xsml aufgehen ist kwazi Menüleiste wo die Alle Buttons um Userforms zuoffen soll aber nur in Tabelle1 fest eingebuden sein

wenn ich so aufmache und noch eine tabelle auf mache dann springt menü auf die andere Tabelle die ich aber nicht brache
 
Du musst beim Starten von Excel prüfen ob hier gleich Tabelle1 angezeigt wird:

Visual Basic:
Private Sub Workbook_Open()

If ActiveSheet.Name = "Tabelle1" Then
    UserForm1.Show (0)
End If

End Sub

Dieser Code kommt deshalb in die Arbeitsmappe (Workbook).

Dann musst du in den Codebereich von Tabelle1 noch folgenden Code eintragen. Hiermit wird die UserForm1 eingeblendet sobald Tabelle1 aktiviert wird und eben wieder ausgeblendet sobald eine andere Tabelle ausgewählt wird.

Visual Basic:
Private Sub Worksheet_Activate()
    UserForm1.Show (0)
End Sub


Private Sub Worksheet_Deactivate()
    UserForm1.Hide
End Sub

So bald
 
es funtionier nicht menü springt immer noch

Wie ich verstaden habt

Code:
dieser kommt in Workbook (Bie mir ist es ThisWorkbook)

Private Sub Workbook_Open()     
 
If ActiveSheet.Name = "Sheet1" Then
    UserForm1.Show (0)
End If
 
End Sub

Code:
und das kommt in tabelle1 bei mir Sheet1(Sheet1))"

Private Sub Worksheet_Activate()
    UserForm1.Show (0)
End Sub
 
 
Private Sub Worksheet_Deactivate()
    UserForm1.Hide
End Sub

Richtig so

bei mir Workbook = ThisWorkbook
Tabellename = Sheet1(Sheet1)
Userform = UserForm1
 
Zuletzt bearbeitet:
Bei mir funktioniert es so wie tombe vorgeschlagen hat. Oder meinst du vielleicht etwas anderes?
es funtionier nicht menü springt immer noch
Durch das Wort "springt" erahne ich worauf du hinaus willst. Willst du, dass die UserForm an eine bestimmte Zelle / Position gebunden wird und das Problem bei deiner ist, dass diese immer wieder auf der Mitte des Bildschirms erscheint?
Das Springen auf die Mitte kannst du mit der Eigenschaft der UserForm "StartUpPosition" ausschalten. Wähle hier Manuell.
 
nein nein Position in tabellen blatt hab ich

ich meine

ich habe ecxel Datei z.B xyz.xsml und der hat menü Leiste UserForm1
So
und wenn ich z.B andere Exel tabelle auf mache z.B abc.xsml dann zeigt dan menü(UserForm1) in Tabelle abc auch Menüleiste von xyt.xsml an

es ist bei mir bestimmt was falsch gelaufen
 
Zuletzt bearbeitet:
Kann es sein das du das Makro in der Datei "Personl.xls" gespeichert hast?

Die Makros die in dieser Datei gespeichert sind, stehen in ALLEN Dateie zur Verfügung und werden dann auch automatisch ausgeführt!

So ist es auch zum Beispiel hier beschrieben.
 

Neue Beiträge

Zurück