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

2. Userform anheften

2. Userform anheften
30.04.2015 09:02:58
Schwoga
Hallo,
ich habe wieder ein Problem. Ich möchte mir zu meinem bestehenden Userform noch ein zweites "basteln", welches hauptsächlich aus Schaltflächen besteht. Dieses Userform soll aber immer auf Tabelle1, auf einer bestimmten Position "angeheftet" bleiben, das zweite Userform, soll wie jetzt auch, beim Blattwechsel "mitgehen". Erstellt habe ich beide und mit vbModeless sind auch beide startbar, aber wie bekomme ich jetzt hin, dass das eine dort bleibt, wo es soll?
Danke für die Bemühungen
Schwoga

20
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: einfach ein-/ausblenden beim Wechsel
30.04.2015 11:06:22
Schwoga
Hallo Matthias,
ja so meine ich das, ich kann aber leider nirgends sehen, wie du das gemacht hast. Wie geht das, und kann man das Userform1 auch "unverrückbar" irgendwo positionieren?
Gruß
Schwoga

AW: einfach ein-/ausblenden beim Wechsel
30.04.2015 11:26:22
Matthias
Hallo
Der Code steht in DieseArbeitsmappe
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Unload UserForm1
Unload UserForm2
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If ActiveSheet.CodeName  "Tabelle1" Then UserForm1.Hide '
Ersetze bitte noch die Zeile mit dem Pfeil, damit es auch funktioniert
wenn Du mehr als Tab1 und Tab2 hast.
Gruß Matthias

Anzeige
AW: einfach ein-/ausblenden beim Wechsel
30.04.2015 12:01:22
Schwoga
Wo genau bau ich das jetzt ein. Das Form "Links" wäre das Teil, das nicht mitwandern soll.
Habs mal einfach so eingebaut wie du es geteilt hast, aber so gings nicht.
Sub activateUserForm()
Aenderungen ' Pop up Fenster
addButtons
'formulareForm.Show vbModeless
'Links.Show vbModeless
End Sub

AW: einfach ein-/ausblenden beim Wechsel
30.04.2015 13:02:02
Schwoga
So sieht jetzt der Code in DieseArbeitsmappe (wer lesen kann ist klar im Vorteil) aus.
Private Sub Workbook_Open()
Call addButtonsToFormulareForm.activateUserForm
End Sub

Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Unload Links
Unload formulareForm
End Sub

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If ActiveSheet.CodeName  "Grunddaten" Then Links.Hide '

Es starten beide, es geht auch weg, wenn ich auf ein anderes Tabellenblatt klicke, aber es kommt leider nicht zurück. Was hab ich nun falsch gemacht? Ich habe ungefähr 40 Tabellenblätter in meiner Arbeitsmappe.
Das Addbuttons haut mir alle Tabellenblätter auf das zweite Userform.

Anzeige
AW: 2. Userform anheften
30.04.2015 09:27:16
Nepumuk
Hallo,
indem du es im Worksheet_Deactivate-Event ausblendest (UserForm2.Hide) und im Worksheet_Activate-Event wieder einblendest (UserForm2.Show). Oder meinst du dass es beim Scrollen mitwandert? Das wird schwierig bis fast unmöglich.
Gruß
Nepumuk

AW: 2. Userform anheften
30.04.2015 11:01:06
Schwoga
Hallo Nepumuk,
nein, es soll auf einer bestimmten Position auf Tabelle1 stehen bleiben, das zweite soll, wie jetzt auch aber mit wandern.
Wie kann ich denn das Ding genau positionieren?
Gruß
Schwoga

AW: 2. Userform anheften
30.04.2015 11:07:09
Nepumuk
Hallo,
soll sie aber verschiebbar bleiben?
Gruß
Nepumuk

Anzeige
AW: 2. Userform anheften
30.04.2015 11:23:05
Schwoga
Nein, soll sie eigentlich auch nicht. Sie soll auf einer Stelle in der Tabelle1 stehen bleiben, in Tabelle2........usw. soll aber weiter gearbeitet werden können, ohne das zweite Form

AW: 2. Userform anheften
30.04.2015 11:59:39
Nepumuk
Hallo,
ich hab dir mal eine Mustermappe gemacht: https://www.herber.de/bbs/user/97379.xlsm
In diesen beiden Zeilen:
lngLeft = CLng(.PointsToScreenPixelsX(Cells(10, 3).Left / CONVERSION_FACTOR * .Zoom / 100))
lngTop = CLng(.PointsToScreenPixelsY(Cells(10, 3).Top / CONVERSION_FACTOR * .Zoom / 100))
Musst du die Zelle anpassen an der das UserForm erscheinen soll.
Gruß
Nepumuk

Anzeige
AW: 2. Userform anheften
30.04.2015 13:16:22
Schwoga
Ok, sieht gut aus. Ich habe ca 40 tabellenblätter bei mir. Ich habe den Code mal bei meinem Userform "links" hinterlegt, aber irgendwie funktioniert das nicht so, wie es soll. Irgendwas mach ich falsch

AW: 2. Userform anheften
30.04.2015 13:26:04
Nepumuk
Hallo,
du benötigst den kompletten Code, auch den in DieseArbeitsmappe und in der Tabelle.
Gruß
Nepumuk

AW: 2. Userform anheften
30.04.2015 19:12:48
Schwoga
So, funktioniert fast. Jetzt habe ich bei DieseArbeitsmappe
Option Explicit
Private Sub Workbook_Open()
Call addButtonsToFormulareForm.activateUserForm
End Sub
Private Sub Workbook_Activate()
If ActiveSheet Is Tabelle1 Then Call Links.Show
End Sub

Private Sub Workbook_Deactivate()
Call Links.Hide
End Sub
Bei Tabelle1 habe ich
Option Explicit
Private Sub Worksheet_Activate()
Call Links.Show
End Sub

Private Sub Worksheet_Deactivate()
Call Links.Hide
End Sub
und bei den Modulen habe ich
Sub activateUserForm()
addButtons
formulareForm.Show vbModeless
Links.Show vbModeless
End Sub Jetzt ist es zwar weg, wenn ich auf eine andere Seite gehe, und es kommt wieder wenn ich bei "tabelle1" bin, dann ist es aber einem neuen Ort, und ich kann auf das zweite Userform nicht mehr zugreifen. Merkwürdig. Ich glaube ich kapiers nicht.

Anzeige
AW: 2. Userform anheften
30.04.2015 19:23:50
Nepumuk
Hallo,
da kann ich ohne die Mappe nichts sagen.
Gruß
Nepumuk

AW: 2. Userform anheften
30.04.2015 19:30:15
Schwoga
Hmm, die kann ich dir leider nicht raufladen.
Irgendwie scheint es, als wäre es gesperrt, wenn ich auf Tabelle1 zurück komme. Es kommt ein Warnton und ich kann nur noch die Schaltflächen vom zweiten Form, das ausgeblendet werden sollte, drücken, bzw. das Form schließen. Wenn ich dann auf ein anderes Blatt gehe und wieder zurück komme auf Tabelle1 dann ist es wieder da, und das gleiche Problem

AW: 2. Userform anheften
30.04.2015 20:07:18
Schwoga
Habe jetzt mal eine Testmappe mit dem gleichen Problem erstellt. Ist soweit alles drin wie im Original, funzt aber auch hier nicht. Vielleicht kannst du ja mal drüber schauen
https://www.herber.de/bbs/user/97393.xlsm
Danke

Anzeige
AW: 2. Userform anheften
30.04.2015 21:15:32
Schwoga
Habe jetzt mal eine Testmappe mit dem gleichen Problem erstellt. Ist soweit alles drin wie im Original, funzt aber auch hier nicht. Vielleicht kannst du ja mal drüber schauen
https://www.herber.de/bbs/user/97393.xlsm
Danke

AW: 2. Userform anheften
30.04.2015 21:52:15
Nepumuk
Hallo,
du musst im UserForm "links" 1. die Eigenschaft ShowModal auf False setzen und 2. die Eigenschaft StartUpPosition auf 0-Manuell.
Zudem habe ich im Modul addbuttonstoformulareform in der Prozedur activateUserForm die Zeile links.Show vbModeless gelöscht.
Und schon läuft's.
Gruß
Nepumuk

Anzeige
AW: 2. Userform anheften
01.05.2015 06:18:17
Schwoga
Hmm, bei mir kommt beim Start deiner Datei der Laufzeitfehler 400, Formular wird bereits angezeigt und kann deshalb nicht gebunden dargestellt werden. Was könnte das nun wieder bedeuten?
Excel stört sich bei DieseArbeitsmappe an
Private Sub Workbook_Activate()
If ActiveSheet Is Tabelle1 Then Call links.Show
End Sub
Es stört nur das links.show

AW: 2. Userform anheften
01.05.2015 09:36:16
Nepumuk
Hallo,
hast du denn in der Prozedur activateUserForm die Zeile nicht gelöscht?
Gruß
Nepumuk

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige