PDA

Vollständige Version anzeigen : Eigenschaften von Textfeldern


Joggi
09.08.2001, 16:52
Hallole

ich habe zwei Textfelder
1. = an (NAME)

2. = cc (NAME)

der Steuerelementinhalt vom 1. ist

=DomWert("[Email]";"Dates - Ordnerdaten";"")

der Steuerelementinhalt vom 2. ist

=DomWert("[Email 2]";"Dates - Ordnerdaten";"")

jetzt möchte ich ,dass mit einer Checkbox man die zwei Feldertauschen kann!

So dass danach der Inhalt von an in cc un umgekehrt steht!


Ich habe ein paar Zeilen entwickelt, welche eigentlich auch stimmen müssten bis auf die Anweisung ControlSource.

Da scheint was nicht zu stimmen, denn wenn ich tauschen drücke steht im EIgenschaftsfeld (Daten) unter Steuerelement die Email Adresse anstatt der Ausdruck


Wie bekomme ich es hin , dass der Ausdruck Domwert... getauscht wird?

Hier der Code

Dim Rst As DAO.Recordset
Dim DB As DAO.Database

Set DB = CurrentDb()
Set Rst = CurrentDb.OpenRecordset("SELECT Dates.tauschen FROM Dates WHERE (((tauschen)= True));")

If Not Rst.EOF Then

If Rst!tauschen = True Then
Me!an.ControlSource = DLookup("[Email 2]", "Dates - Ordnerdaten", "")

Me!cc.ControlSource = DLookup("[Email]", "Dates - Ordnerdaten", "")
End If

Else

Me!an.ControlSource = DLookup("[Email]", "Dates - Ordnerdaten", "")

Me!cc.ControlSource = DLookup("[Email 2]", "Dates - Ordnerdaten", "")

End If

Rst.Close

Set Rst = Nothing
Set DB = Nothing

Danke joggi

Stema
09.08.2001, 17:07
Hallo Joggi,

so sollte es laufen.
Aber wozu brauchst Du einen Recordset? Setz einfach einen Toggle-Button in Dein Formular. Hat er den Wert 1, dann dies, sonst jenes. Den Code führst Du dann beim Ereignis Toggle_AfterUpdate aus.

select case ToggleButton
case 1
Me!an.ControlSource =DomWert("[Email 2]";"Dates - Ordnerdaten";"")
Me!cc.ControlSource =DomWert("[Email]";"Dates - Ordnerdaten";"")
case 2

Me!an.ControlSource =DomWert("[Email]";"Dates - Ordnerdaten";"")
Me!cc.ControlSource =DomWert("[Email 2]";"Dates - Ordnerdaten";"")
End select

Joggi
10.08.2001, 08:09
Guten Morgen Stema

vielen Dank für Deine Antwort!

Gute Idee!

leider tut sich nix!

Select Case tauschbutton
Case 1
Me!an.ControlSource =DomWert("[Email 2]";"Dates - Ordnerdaten";"")
Me!cc.ControlSource =DomWert("[Email]";"Dates - Ordnerdaten";"")
Case 2
Me!an.ControlSource =DomWert("[Email]";"Dates - Ordnerdaten";"")
Me!cc.ControlSource =DomWert("[Email 2]";"Dates - Ordnerdaten";"")
End Select


Wenn ich meine Version aufrufe, kommt ein Syntaxfehler Fehler beim Kompilieren.

Hmmm Keine Ahnung!

Grüße Joggi


Dim Rst As DAO.Recordset
Dim DB As DAO.Database

Set DB = CurrentDb()
Set Rst = CurrentDb.OpenRecordset("SELECT Dates.tauschen FROM Dates WHERE (((tauschen)= True));")

If Not Rst.EOF Then

If Rst!tauschen = True Then
Me!an.ControlSource =DomWert("[Email 2]";"Dates - Ordnerdaten";"")
Me!cc.ControlSource =DomWert("[Email]";"Dates - Ordnerdaten";"")
'Me!cc.ControlSource = DLookup("[Email]", "Dates - Ordnerdaten", "")
End If

Else

Me!an.ControlSource =DomWert("[Email]";"Dates - Ordnerdaten";"")
Me!cc.ControlSource =DomWert("[Email 2]";"Dates - Ordnerdaten";"")
End If

Rst.Close

Set Rst = Nothing
Set DB = Nothing

Stema
10.08.2001, 09:40
Hallo Joggi,

an welcher Stelle tritt der Syntaxfehler denn im Code auf? Beim Kompilieren markiert er den angemeckerten Fehler.

Joggi
10.08.2001, 09:44
Hi Stema


bei der Zeile mit
Me!an.ControlSource =DomWert("[Email 2]";"Dates - Ordnerdaten";"")

keine Ahnung

Joggi

WAG
10.08.2001, 10:06
Hi Joggi,
so wirds was
Me!an.ControlSource = "=Dlookup(""Email"",""Dates - Ordnerdaten"")"

Dieter

Joggi
10.08.2001, 10:16
Hallo Dieter,

vielen Dank für Deine Antwort

zwar kommt jetzt keine Fehlermeldung mehr, dafür tut sich auch nix!

und wenn ich in die Eigenschaft der Felder schaue, hast sich bei Steuerelement nix geändert!

vielleicht kannst Du mir nochmals helfen oder mir eine kurzes Bsp per mail senden!

Grüße Joggi

Stema
10.08.2001, 10:20
Hi Joggi,

Me!an.ControlSource erwartet einen String. Ich kenne aber die Funktion DomWert nicht. Ich weiß nicht, was sie zurückliefert. Und da ich die englische Version habe ist diese Funktion bei mir unbekannt. Schau Dir mal die Hilfe zu DomWert an.

A.S.
10.08.2001, 10:24
Warum eine so umständliche Lösung in dem man selbst versucht etwas zu generieren, was schon da steht? ;)

Dim strSourceSave As String

strSourceSave = Me!cc.ControlSource
Me!cc.ControlSource = Me!an.ControlSource
Me!an.ControlSource = strSourceSave

dementsprechend für beide Fälle umsetzen.

------------------
HTH

Arno

A.S.
10.08.2001, 10:29
PS: Der dritte Parameter der DomWert-Funktion ist optional und sollte bei Nichtbenutzung entfallen ("")

Joggi
10.08.2001, 10:38
Erst mal vieeln Dank an alle!

Jetzt geht es!
und zwar so:

leider hat die kürzere Version von Dir Arno nicht funktioniert keine Ahnung wieso !

War ja eigentlich logisch!
egal!
Es hatte sich nichts gerührt!

Grüße und nochmals Danke!
Joggi


Dim Rst As DAO.Recordset
Dim DB As DAO.Database

Set DB = CurrentDb()
Set Rst = CurrentDb.OpenRecordset("SELECT Dates.tauschen FROM Dates WHERE (((tauschen)= True));")

If Not Rst.EOF Then

If Rst!tauschen = True Then
Me!an.ControlSource = "=Dlookup(""[Email 2]"",""Dates - Ordnerdaten"")"
Me!cc.ControlSource = "=Dlookup(""[Email]"",""Dates - Ordnerdaten"")"

End If

Else

Me!an.ControlSource = "=Dlookup(""[Email]"",""Dates - Ordnerdaten"")"
Me!cc.ControlSource = "=Dlookup(""[Email 2]"",""Dates - Ordnerdaten"")"
End If

Rst.Close

Set Rst = Nothing
Set DB = Nothing