Textfeld Funktionsaufruf zuweisen

Antwort erstellen

Smilies
:D :) :( :o :shock: :? 8-) :lol: :x :P :razz: :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :badgrin: :doubt:
BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet
Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Textfeld Funktionsaufruf zuweisen

Re: Textfeld Funktionsaufruf zuweisen

Beitrag von ClausM » 02. Sep 2021, 11:01

Puh, geschafft!
Code: Alles auswählen
  .ControlSource = "= myDSum(""LK_UPosMenge"", """ & GCstrTAB_Lieferkontingent & """, ""LK_ANr = "" & Nz(P_ANr, 0) & "" AND LK_PNr = "" & Nz(P_PNr, 0) & "" AND LK_Aktiv = True"")"

Re: Textfeld Funktionsaufruf zuweisen

Beitrag von ClausM » 02. Sep 2021, 10:14

Code: Alles auswählen
 ""LK_ANr = Nz(P_ANr, 0)"")"

Wenn ich die Funktion wie oben beschrieben aufrufe, dann wird auch genau die Zeichenfolge an die Funktion übergeben, d. h. die Zeichenfolge "Nz(P_ANr, 0)" wird nicht durch die Auftragsnummer ersetzt.

Aber am einfachsten setzt Du einen Breakpoint auf die Zeile und gibst den gesamten String, den Du der ControlSource zuweisen willst, im Direktfenster mal aus und dann solltest Du sehen, wo das Problem liegt.

Probiere ich schon seit gestern, aber entweder wird die Zeichenfolge nicht genommen oder die Auftragsnummer, bzw. das Feld wird nicht gefunden.

Re: Textfeld Funktionsaufruf zuweisen

Beitrag von Bitsqueezer » 02. Sep 2021, 09:31

Hallo,

vor der letzten schließenden Klammer im String fehlt auf jeden Fall noch ein "".

Aber am einfachsten setzt Du einen Breakpoint auf die Zeile und gibst den gesamten String, den Du der ControlSource zuweisen willst, im Direktfenster mal aus und dann solltest Du sehen, wo das Problem liegt.

In einem WHERE-Filterstring kannst Du statt Anführungszeichen auch einfach Hochkomma verwenden, dann wird es einfacher.

Gruß

Christian

Re: Textfeld Funktionsaufruf zuweisen

Beitrag von uwms » 02. Sep 2021, 09:30

...denke es sollte so lauten, wenn LK_ANR und P_ANR Felder der gleichen Tabelle sind:

Code: Alles auswählen
 .ControlSource = "= myDSum(""LK_UPosMenge"", """ & GCstrTAB_Lieferkontingent & """, ""LK_ANr = Nz(P_ANr, 0)"")"


Grüße
Uwe

Textfeld Funktionsaufruf zuweisen

Beitrag von ClausM » 02. Sep 2021, 08:41

Guten Morgen,

ich habe ein Problem bei der Zuweisung einer Formel/Funktionsaufruf innerhalb eines Berichts.

Weiße ich dem Textfeld über den Ausdruckseditor folgende Formel zu, ist alles in Ordnung.
Code: Alles auswählen
=Nz(DomSumme("[LK_UPosMenge]";"tbl_Lieferkontingent";"[LK_ANr] = [P_ANr] AND [LK_PNr] = [P_PNr]");0)


Jetzt möchte ich der Textbox unter VBA die folgende Formel zuweisen.
Code: Alles auswählen
  .ControlSource = "= myDSum(""LK_UPosMenge"", """ & GCstrTAB_Lieferkontingent & """, ""LK_ANr = """ & Nz(P_ANr, 0) & ")"


Hier kommt es zu der Fehlermeldung
2465: Produktions-Datenbank kann das in Ihrem Ausdruck angesprochene Feld 'P_ANr' nicht finden.


Ich habe den Eindruck, dass es an der Setzung der Anführungszeichen liegt.
Aber ich habe jetzt schon Stunden damit verbracht alle möglichen Kombinationen zu testen, immer ohne Erfolg.

Hat jemand von euch eine Idee?

LG
Claus

Nach oben