Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Makro für änderung

Begonnen von Graydens, November 07, 2024, 20:05:35

⏪ vorheriges - nächstes ⏩

Graydens

Hallo

Ich würde gerne übe ein Eingabefeld bei änderung ein Makro ausführen.

Das hätte ich gefunden unter Ereignis-> zb "Bei Änderung".

Jetzt würde ich aber bei Änderung ein angelegtes Ja/nein feld setzen.
Leider finde ich in der Makro Liste nicht den richtigen Befehl.

lg

MzKlMu

Hallo,
vergiss Makros, Du kriegst zu Makros keine Hilfe, niemand hier im Forum verwendet Makros. Es kommt nur VBA in Frage.
Bei Änderung kommt nicht in Frage, weil das auf jeden Tastendruck reagiert.

Verwende "Nach Aktualisierung"

Und jetzt erkläre mal was Du genau machen willst, das Vorhaben scheint mir fragwürdig zu sein.
Gruß Klaus

Debus

Was genau soll das Ziel des Makros sein dann kann man dir bei der Erstellung mit VBA sicherlich helfen.

Gruß
Holger

Graydens

Zitat von: MzKlMu am November 07, 2024, 21:52:05Verwende "Nach Aktualisierung"

Und jetzt erkläre mal was Du genau machen willst, das Vorhaben scheint mir fragwürdig zu sein.

Ich habe eine Checkbox und 2 getrennte Datumsfelder. Ändere ich beim ersten Feld das Datum, springt das Häckchen raus. Beim ändern des 2ten Feldes springt das Häckchen wieder rein.


Wenn das funktioniert würde ich eine gerne eine Abfrage gestalten, wo wir die nächsten 3 Monate alle Positionen angezeigt werden die noch kein Häckchen haben.

lg

Debus

Hast du bei den checkboxen ein Ereignis hinterlegt?

MzKlMu

Hallo,
soll das nur bei einem neuen Datensatz passieren ?

Du solltest das Vorhaben mal ausführlicher erklären. Was bedeuten die beiden Datumsfelder ?

Gruß Klaus

Graydens

Zitat von: Debus am November 07, 2024, 22:37:36Hast du bei den checkboxen ein Ereignis hinterlegt?

Nein, da ich nicht wirklich Plan habe wie ich das überhaupt angehen soll. Ich dachte zuerst das funktioniert mit einem Makro.

Zitat von: MzKlMu am November 07, 2024, 23:46:52Du solltest das Vorhaben mal ausführlicher erklären. Was bedeuten die beiden Datumsfelder ?

Es ist so:
1 Datumsfeld: Gibt an wann die letzte Überprüfung Vorort war.
2 Datumsfeld: Gibt an ob ein neuer Termin schon vereinbart wurde.
Checkbox: Nach der will ich irgendwann dann Filtern können.

Sinn davon ist. Der Techniker hatte vor 6 Monaten den letzten Besuch Vorort, vor 6 Monaten wurde das in Datum 1 eingetragen und die Checkbox ging auf false. Vor 3 Monaten hatte das Office die Checkbox abgefragt, hier erscheinen nun alle Einträge (für die nächsten 3 Monate zb) welche Termine noch auszumachen sind. Danach ruft der Techniker beim Kunden an vereinbart einen Termin, Das Office schickt eine Terminbestätigung aden Kunden und setzt das Datum des 2 Feldes auf den vereinbarten Tag, dadurch soll die Checkbox auf True gehen und aus der Filterliste verschwinden. Ist dann wieder ein Vorort Termin, und es wird danach Feld 1 geändert soll das wieder von vorne beginnen.

Ich hoffe das ist jetzt Verständlich geschrieben, aber das wäre der tatächliche Workflow. Am Ende des Tages will ich in einer Liste sehen welche Termine vom Techniker noch vereinbart werden müssen. Daspassiert bei uns meist 2 - 3 Monate vor dem tatsächlichen Vorort Termin.

Könnte man das so umsetzten?

Am Ende werden die Datumsfelder vermutlich als Textfelder umgestellt, da wir auch mehrere Tage Vorort sein können.

lg Gray






Debus

Du kannst bei den Datumsfeldern immer mit dem Ereignis "Bei Veränderung" arbeiten. Also Bei Verädnerung Datum1  machst Du einfachMe.ChkBox1 = -1 und ebenso bei dem anderen Datum. Das funtkioniert dann auch bei Textfeldern.

Für die "aktivitäten Liste" musst Du dann einfach eine Abfrage machen, die die Kriterien erfüllt. Wenn Du da unterstützung brauchst, dann poste mal Dein Datenmodel.

Holger

Graydens

#8
Zitat von: Debus am November 08, 2024, 09:35:09Du kannst bei den Datumsfeldern immer mit dem Ereignis "Bei Veränderung" arbeiten. Also Bei Verädnerung Datum1  machst Du einfach
Me.ChkBox1 = -1 und ebenso bei dem anderen Datum. Das funtkioniert dann auch bei Textfeldern.

Ist mir noch etwas unklar.
Ich bin beim Datumsfeld auf Ereignis -> Bei Önderung -> ...

Danach habe ich AusführenCode ausgewählt und wollte den Code eingeben.

Funktionsname: Abfragegebucht.ChkBox1 = -1 (kommt zu Fehlermeldung)

oder Variante

Funktionsname: me.Abfragegebucht = -1 (kommt zu Fehlermeldung)

oder Variante

Funktionsname: Abfragegebucht = -1 (hier passiert nichts)

hatte ich probiert.

Leider beides ohne Erfolg

Ich vermute mal das ich ChkBox1 mit dem Namen meiner Checkbox ersetzen muss?

lg


MzKlMu

Hallo,
@holger
"Bei Änderung" geht nicht, das wird bei jedem Tastendruck ausgeführt, also bei einem Datum 10x. Es kommt nur "Nach Aktualisierung" in Frage.

@Graydens
Ich halte das Vorhaben wie geplant für unbrauchbar. Datumsfelder zu Textfeldern zu machen ist ein nogo.
Jeder Servicetermin sollte ein eigener Datensatz sein, ggf. mit einem Datumbis wenn es mehrere Tage sind.
Es wird dann einfach abgefragt ob es leere Felder gibt für den neuen Termin.
Das Hakenfeld entfällt ersatzlos.

Zeige mal ein Bild des Beziehungsfensters.
Gruß Klaus

Graydens

@MzKlMu

Meinst du das hier?

Sie dürfen in diesem Board keine Dateianhänge sehen.

Graydens

#11
ZitatIch halte das Vorhaben wie geplant für unbrauchbar. ....

Es wird aber bei beiden Feldern immer ein Datum drinnen stehen und nie leer sein. Entwerder das alte oder aktuelle.
Darum war mein Gedanke mit der Checkbox zu arbeiten.

MzKlMu

Hallo,
ja, bitte die Tabelle mit den Kundendaten so groß ziehen, dass man alle Felder sieht.
Gruß Klaus

Graydens

sorry

anbei nochmal ordentlich

MzKlMu

#14
Hallo,
die eigentlichen Servicedaten haben in der Tabelle für die Kundendaten nichts zu suchen. Hier wird eine eigene Tabelle benötigt die jeden Termin als eigenen Datensatz erfasst (mit einem Fremdschlüssel zum Kunden). In diese Tabelle kommt auch der Techniker. Und dann hast Du auch das leere Feld wenn der Folgetermin noch nicht vereinart wurde.
In die Tabelle mit den Kundendaten kommen nur die reinen Kundendaten, kein Feld zu Wartungen etc.

Das musst Du alles noch mal gründlich überdenken bzw. überarbeiten. Das ist so jedenfalls nicht brauchbar.

Hier mal noch ein Link zu einem Tutorial.

https://www.access-tutorial.de/

PS:
Die Feldnamen sind eine Katastrophe, Sonder (/) und Leerzeichen und einige viel zu lang.
Nenne ID nicht einfach ID, sondern mit Bezug zu Tabelle. Und vorsorglich: Auf keinen Fall Nachschlagefelder in Tabellen direkt verwenden.
Gruß Klaus