Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Userform soll Variable setzen
zurück: Wo liegt mein Denkfehler? weiter: Ein und Ausblenden wenn Suchwert zutrifft Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Offen Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Gast



Verfasst am:
21. Aug 2010, 21:10
Rufname:

Userform soll Variable setzen - Userform soll Variable setzen

Nach oben
       Version: Office 2007

hallo

habe eine Datei mit 5 verschiedenen Userforms und 1 Userform die von allen anderen gestartet wird.

jetzt möchte ich das jede Userform die gestartet wird eine Variable setzt die den Namen der gestarteten Userform beinhaltet.

Diese Variable bleibt solange gesetzt bis die Userform entladen wird. Activate scheidet deshalb aus

habe hierzu einen Codeschnipsel gefunden, der aber nicht richtig funktioniert

Code:
Public myOT As Objekt


und dann in der Userform

Code:
Private Sub UserForm_Activate()
myOT = Me.Name
End Sub


bekomme aber bei myOT = Me.Name immer den Debugger

was mir noch ganz fehlt wie ich die Variable an die eine Userfrom übergebe die von den anderen jeweils gestartet wird.

Ich möchte mit dieser Variablen das ActiveControl der zuerst gestarteten Userform ansprechen und zwar allgemein.
Nicht in der Form
Code:
If Userform2.visible = True Then
Userfrom2.ActiveControl = .....

sondern einfach sage

Code:
myOT.ActiveControl


Optimal wäre natürlich wenn ich das nicht in jede Userform reinschreiben muß, sondern für die ganze Mappe gilt und wenn ich eine Userform hinzufüge auch automatisch für diese gilt

Vielleicht hat ja jemand eine Idee

Viele Grüße Hel.
Gast



Verfasst am:
22. Aug 2010, 08:11
Rufname:


AW: Userform soll Variable setzen - AW: Userform soll Variable setzen

Nach oben
       Version: Office 2007

Hallo,

so

Code:
Private Sub UserForm_Activate()
    Set myOT = Me
End Sub

Private Sub UserForm_Terminate()
    Set myOt = Nothing
End Sub

Gruß
Gast



Verfasst am:
22. Aug 2010, 11:05
Rufname:

AW: Userform soll Variable setzen - AW: Userform soll Variable setzen

Nach oben
       Version: Office 2007

Hallo Gast

das klappt jetzt, hatte noch einen Fehler, hatte die Deklaration der Variablen in Diese Arbeitsmappe, muß aber in ein allgemeines Modul.

Allerdings hab ich noch einen Fehler,
wenn ich abfrage ob myOT leer ist (keine Userform gestartet)
in der Art
If myOT.Name = "" Then
oder
If myOT.Value = "" Then
oder
If myOT.Visible = True Then

bekomme ich den Debugger

wie kann ich das hinbekommen.

Eine zweite Frage wäre, wie kann ich die Setzung der Varablen so hinbekommen(allgemeines Modul) das beim Starten einer Userform dies vollzogen wird. (ohne den Code im Aktivierungsereignis der Userform stehen zu haben)

Hast du auch dazu eine Lösung

Viele Grüße Hel.
ransi
Für den Hausgebrauch reicht's..


Verfasst am:
22. Aug 2010, 11:13
Rufname:
Wohnort: Im schönen Weserbergland

AW: Userform soll Variable setzen - AW: Userform soll Variable setzen

Nach oben
       Version: Office 2007

HAllo Hel



Zu 1)
If myOT Is Nothing Then


Zu 2)
Wie rufst du die Userform denn auf ?

ransi

_________________
Let there be light, sound, drums, 'n guitar
Let there be rock
...
And the music was good
Gast



Verfasst am:
22. Aug 2010, 11:27
Rufname:


AW: Userform soll Variable setzen - AW: Userform soll Variable setzen

Nach oben
       Version: Office 2007

Hallo Hel

Code:
Option Explicit

Public UFO1 As Object, UFO2 As Object

Sub a()
Set UFO1 = UserForm1
If Not UFO2 Is Nothing Then
MsgBox "ping2"
Else: MsgBox "kein ping2"
End If
End Sub


Code:
'modul userform1
Private Sub UserForm_Initialize()
MsgBox "ping1"
End Sub

Starten ist der falsche Ausdruck. Du musst zwischen Laden (Load; erfolgt auch mit der Set-Anweisung)u. Zeigen(Show - loest das Activate_Ereignis aus) unterscheiden.

Gruß Gerd
Gast



Verfasst am:
22. Aug 2010, 16:12
Rufname:

AW: Userform soll Variable setzen - AW: Userform soll Variable setzen

Nach oben
       Version: Office 2007

Hallo
erst mal vielen Dank für die Antworten

ransi Punkt1 Volltreffer klappt bestens

Gerd das ist noch nicht ganz das was ich möchte.

Es sollte so sein, das wenn eine Userform aktiviert wird (Es muß entgegen meiner Annahme oben das Actvate-Ereignis sein, da sonst bei mehreren angezeigten Userforms keine Neusetzung der Variablen erfolgt), die Variable gesetzt werden. Die Namen sind nicht bekannt.

Im Extremfall

Datei hat keine Userform, Datei wird weitergegeben, User erstellt eine Userform die über einen Button gestartet wird mit dem normalen Code (Er weiß von der Setzung der Variablen nichts)
Startet er jetzt die Userform wird durch den Code im allgemeinen Modul die Variable gesetzt.
Im Kurztext. Das Modul überwacht ob eine Userform aktiviert wird und setzt die Variable.
Ich hoffe ihr könnt mir weiterhelfen.

Viele Grüße Hel.
Gast



Verfasst am:
25. Aug 2010, 01:10
Rufname:

AW: Userform soll Variable setzen - AW: Userform soll Variable setzen

Nach oben
       Version: Office 2007

Hallo
gibt es keine Lösung für dieses Vorhaben ?????

Habe noch zwei weitere Fragen und weiß nicht genau ob ich ein neues Thema erstellen sollte (wenn ja, bitte entschuldigen)

Habe folgenden Code

Code:
ActiveCell.Value = Format(CDbl(Label1.Caption), "#.###,## €")


Bekomme dies aber als Text in die Zelle und Excel fragt ob er dies als Zahl eintragen soll. Eigentlich sollte es doch eine Zahl sein und als Währung erkannt werden oder ??

Zweitens: Wie kann ich vor einen String immer ein zeichen setzen (Userform/Label) egal ob der String schon ein Zeichen hat oder auch schon mehrere.

Beispiel: ich gebe eineZahl ein und bemerke das ich das minus davor vergessen hab,jetzt möchte ich das minus per button davorsetzen

viele Grüße Hel.
Gast



Verfasst am:
25. Aug 2010, 10:49
Rufname:

AW: Userform soll Variable setzen - AW: Userform soll Variable setzen

Nach oben
       Version: Office 2007

Hallo

Punkt 2 hat sich erledigt, konnte ss mit

Label1.Caption = "-" + Left$(Label1.Caption, Len(Label1.Caption))

lösen. Bleiben noch die anderen Fragen

Viele Grüße Hel.
ransi
Für den Hausgebrauch reicht's..


Verfasst am:
25. Aug 2010, 14:14
Rufname:
Wohnort: Im schönen Weserbergland

AW: Userform soll Variable setzen - AW: Userform soll Variable setzen

Nach oben
       Version: Office 2007

Ich glaub ich habs.

Du musst den Button Einfügen-->Userform umprogrammieren.
Dan kann man reagieren wenn eine Userform eingefügt wird.

Schau es dir mal an:

Eine andere Möglichkeit wäre:
Einen Timer aufsetzen.
Der überwacht alle 1 Sekunden die VBE.
Wenn eine UserForm eingefügt wird, tritt der ein eigenes Event los.

Das ist aber sehr kompliziert.

ransi

_________________
Let there be light, sound, drums, 'n guitar
Let there be rock
...
And the music was good



Einfügen_Userform_ueberwachen.xls
 Beschreibung:

Download
 Dateiname:  Einfügen_Userform_ueberwachen.xls
 Dateigröße:  33.5 KB
 Heruntergeladen:  11 mal

Gast



Verfasst am:
26. Aug 2010, 20:59
Rufname:


AW: Userform soll Variable setzen - AW: Userform soll Variable setzen

Nach oben
       Version: Office 2007

Hallo ransi

erstmal ein dickes Dankeschön

war sicher nicht einfach, werde mir das noch genau anschauen und wird sicher eine Möglichkeit sein.

Allerdings hatte ich gedacht, das es möglich wäre den Start einer Userform zu erfassen, ihren Namen auslesen und als Variable setzen. Ich weiß nur nicht ob das Objekt Userform genau definiert ist oder einfach nur als Objekt gilt. Die Erstellung einer Userform zu überwachen, wäre dann nicht nötig.

Vielleicht kannst du ja mal auf diese Formatierung schauen was da falsch ist.

Code:
ActiveCell.Value = Format(CDbl(Label1.Caption), "#.###,## €")


Habe auch schon versucht es über eine Variable die als Double deklariert ist hinzukriegen, aber es wird immer Text ausgegeben.

Viele Grüße Hel.
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Excel Formeln: Defaultwerte setzen 3 Javari 278 10. Sep 2008, 08:48
silex1 Defaultwerte setzen
Keine neuen Beiträge Excel Formeln: Formel per Makro eingeben mit Variable 1 Gast 397 02. Sep 2008, 17:44
Gast Formel per Makro eingeben mit Variable
Keine neuen Beiträge Excel Formeln: Variable als Blattnamen in VBA 3 Gast 2002 18. Aug 2008, 15:14
Gast Variable als Blattnamen in VBA
Keine neuen Beiträge Excel Formeln: Zellfarbenänderung bei setzen eines Kontrollhäkchen 7 Sokol_AC 897 15. Jul 2008, 10:57
Sokol-AC Zellfarbenänderung bei setzen eines Kontrollhäkchen
Keine neuen Beiträge Excel Formeln: Überprüfen und dann x setzen! 2 aos_bone 299 20. Jun 2008, 22:13
aos_bone Überprüfen und dann x setzen!
Keine neuen Beiträge Excel Formeln: Zeilen - Variable? 6 Titch 4128 15. Jun 2008, 10:38
Thomas Ramel Zeilen - Variable?
Keine neuen Beiträge Excel Formeln: Zelle formatieren, um Haken oder Kreutz zu setzen?? 4 Yak 54 7769 24. Apr 2008, 14:00
Yak 54 Zelle formatieren, um Haken oder Kreutz zu setzen??
Keine neuen Beiträge Excel Formeln: variable oder dynamische Zeilenanzahl 1 hardliner 2606 16. Jan 2008, 14:09
urs variable oder dynamische Zeilenanzahl
Keine neuen Beiträge Excel Formeln: variable Zellenanzahl bei Formelberechnung 4 joergt 807 22. Aug 2007, 12:51
joergt variable Zellenanzahl bei Formelberechnung
Keine neuen Beiträge Excel Formeln: Tabelle über Userform filtern! 1 Gast 792 17. Aug 2007, 23:59
fridgenep Tabelle über Userform filtern!
Keine neuen Beiträge Excel Formeln: variable Übernahme eines Vortrages 9 logobiber 500 17. Aug 2007, 15:50
logobiber variable Übernahme eines Vortrages
Keine neuen Beiträge Excel Formeln: Userform öffnen, wenn bestimmte Zelle aktiv ist. 1 blicki 2904 15. Mai 2007, 07:52
blicki Userform öffnen, wenn bestimmte Zelle aktiv ist.
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Excel-Formeln