Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

Formular oder Abfrage Wenn





Frage

Hallo, weiß einer wie man in einem Formular (Textfeld) eine Wenn-Funktion einbaut.Also ich habe ein Textfeld, das mir den Wet von Feld 1 und Feld 2 ([Feld1]+[Feld2])errechnet, wenn dieser Wert aber kleiner ist als 0, soll in meinem Textfeld der Wert 1 stehen. Geht das und wenn ja wie. Vielen Dank schon mal Margret

Antwort 1 von Roadrunner90

Hallo Margret,
geht mit VBA am einfachsten:
if textfeld < 0 then textfeld = 1
Gruß Rudolf

p.s. haben sich deine anderen Probleme erledigt?

Antwort 2 von Margret

Hallo Rudolf,
danke für Dein Angebot ich werde sicherlich darauf zurück kommen. Aber jetzt muß ich erst einmal mein jetziges Problem klären. Wo muß ich den den Text reinschreiben? Also ich habe es in die Ereignisprosedur Code-Generator reingeschrieben aber nix geht. Ich bekomme die Fehlermeldung, das ich in diesem Feld keine Veränderung machen darf. Das ist alles sehr verwirrend. Ich versuch Dir mein Problem nochmal genau zu schildern. Ich habe eine Tabelle mit zwei verschieden Werten Beispiel Wert1 =15 Wert2 =10. Nun möchte ich von Wert1 den Wert2 abziehen 15-10=5. So erste Frage: Kann ich in einer zusätzlichen Spalte in meiner Tabelle das Ergebnis anzeigen lassen? Oder vielleicht durch eine Abfrage? Meine zweite Frage: Wenn Wert1 =10 und Wert2 =15 wäre das Ergebnis -5, so ich möchte dann aber eine 1 angezeigt bekommen. Also wenn Ergebnis kleiner als 0 dann 1.
So ich hoffe mich klar ausgedrückt zu haben, ist ganicht so einfach.

Antwort 3 von Roadrunner90

Hallo Margret,
wenn du das Ergebnis in der Tabelle haben willst musst du dafür ein Feld in der Tabelle definieren. Brauchst du aber nur, wenn das Ergebnis später noch gebraucht wird.
Die Ereignisprozedur würde ich evtl. einen einen Button (bei Klick) hängen, der auch die Rechnung ausführt. Oder soll die Berechnung automatisch vorgenommen werden?
Gruß Rudolf

Antwort 4 von Roadrunner90

hab ich nicht alles gelesen !
Die Prozedur aus Antwort 1 muss natürlich so lauten:
Ergebnis = feld1 - feld2
if Ergebnis < 0 then Ergebnis = 1

Antwort 5 von Margret

Ja das mit der Tabelle klingt gut, weil es wäre nicht schlecht die Werte dort zu haben. Du sagst ich muß ein Feld in der Tabelle definieren, was heißt das genau. Was muß ich da machen ich hab doch von nix ne Ahnung.
ciao
Margret

Antwort 6 von Roadrunner90

die Tabelle in der Entwurfsansicht öffnen und ein Feld hinzufügen


Antwort 7 von JohnnyLoser

@Margret
@Roadrunner

Es ist nur meine bescheidene Meinung, aber ich lehne es grundsätzlich ab, ein Feld in eine Tabelle einzufügen, dessen Inhalt in direkter Abhängigkeit zu anderen Feldinhalten der Tabelle steht.

a) ist es Platzverschwendung, auch wenn das bei den heutigen Festplatten keine Rolle mehr spielt

und

b) kann der Wert auch in jeder Abfrage, jedem Formular oder Bericht berechnet werden, was bei den heutigen Prozessoren auch keine Rolle mehr spielt

Für die Formularanzeige würde ich in die Steuerelementeigenschaft des Textfeldes einfach reinschreiben:

=Wenn(([Feld1]+[Feld2])<0;1;([Feld1]+[Feld2]))


Gruß

Johnny

Antwort 8 von Margret

ja, das klingt alles unheimlich einfach, aber mein Problem löst es nicht. Die Tabellenversion wäre mir am liebsten, aber da geht es schon los. Wo und wie mach ich der Tabelle klar, das sie den Wert von Feld1 und Feld2 ausrechnet? Ich habe dann in Standartwert von Feld3 [Feld2] geschrieben, nur um erst einmal zu sehen ob das der Weg ist, doch dann bekomme ich immer die Meldung Feldname unbekant obwohl es diese Spalte gibt. Tut mir Leid, Ihr rauft Euch bestimmt schon die Haare, aber ich hab wirklich keine Ahnung und brauch einen Ansatz wo ich anfanngen soll. Mit der Formel kann ich erst etwas anfangen, wenn ich weiß wo ich sie reinschreiben soll.
Gruß
Margret

Antwort 9 von Margret

Eine Abfrage wäre vielleicht sogar besser.
Das sieht dann so aus:
Tabelle1 Feld1=10 Feld2=20
Abfrage1 Summe von Feld1 und Feld2, =30



Antwort 10 von oliverV

Hallo Margret,

ich stimme Johnnys Antwort zu, ich würde den errechneten Wert des Feldes 3 auch nicht in eine Tabelle schreiben. Die Differenz oder die Summe von zwei Feldern kannst du jederzeit durch Subtraktion bzw. Summierung der Felder 1 und 2 erreichen.

Die Formel von Johnny musst du in die Steuerelementeigenschaft (nicht in den Standardwert) des Feldes 3 schreiben (z.Zt. hast du dort =[Feld1] + [Feld2] stehen, nach deiner anfänglichen Problembeschreibung), wenn du die Differenz der Felder errechnen willst, musst du natürlich + durch – in der Formel ersetzten.

Gruß
oliver


Antwort 11 von Margret

Danke an Jonny und Oliver und Rudolf!
Der Groschen ist gefallen. Mein Problem ist gelöst. Ich laß mir jetzt die Werte im Bericht ausdrucken.
Vielen Dank nochmal
Margret