Neuigkeiten:

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

Mobiles Hauptmenü

Alle Felder eines Formulars identifizieren

Begonnen von MaxP, Juli 05, 2019, 11:40:13

⏪ vorheriges - nächstes ⏩

MaxP

Hallo zusammen,

ich habe mehrere Formulare mit insgesamt rd. 500 Text-, Memo- u. Datumsfeldern, in denen div. Informationen zu einem Gebäude eingetragen werden.

Nun kommt es häufig vor, dass die eingegebene Information noch unvollständig oder nicht verifiziert ist. Dann trage ich zusätzlich ein ? oder xx ein. Die Breite der Text- u. Memofelder ist häufig kleiner als ihr Inhalt, so dass das Ende des Textes somit z.B. das ? nicht mehr zu sehen ist.

Gibt es eine Möglichkeit, über VBA z.B. beim Öffnen des Forms alle Text- u. Memofelder (ohne Datumsfelder), die ein ? oder xx enthalten, rot einzufärben, um sie für nachträgliche Bearbeitung leichter zu finden? Aufgrund der zahlreichen Felder möchte ich ungern mit Bedingter Formatierung arbeiten.

Zusatzfrage: Gibt es eigentlich unter A03 ein spezielles Text- oder Memofeld, dass man in der Formularansicht aufziehen also vergrößern kann? (wie in diesem Editorfenster)

Gruß
Max
Win 10 pro 64 bit, Access 2003

DF6GL

Hallo,  das Eintragen eines "Status" im betroffenen Datenfeld ist (mindestens) nicht zu empfehlen.


Besser wäre, für jedes in Frage kommende Feld ein zugehöriges Statusfeld zu spendieren. 

Zitatmehrere Formulare mit insgesamt rd. 500 Text-, Memo- u. Datumsfeldern

Das sagt wenig aus.

Wie viele Felder hat das "größte" Formular? Und zeige das Beziehungsfenster und einen Screenshot dieses Forms

Es hört sich stark nach nicht normalisierter Datenstruktur an.
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

MaxP

Hallo,

es handelt sich im Wesentlichen um ca. 14 Einzelformulare einer älteren DB, die nicht miteinander verknüpft sind. Das größte hat etwa 50 Text- bzw. Memofelder.

Ich hatte gehofft, dass eine "pauschale" Überwachung pro Formular möglich wäre. Der Aufwand, für jedes infrage kommende Feld ein Statusfeld einzurichten, ist dann doch recht hoch. Und wozu eine Info speichern, die jederzeit auch ohne Speichern abzurufen ist?

Dann könnte ich doch auch für jedes einzelne Feld einen VBA-Einzeiler zum farbigen Markieren des Felds schreiben, oder?

Gruß
Max
Win 10 pro 64 bit, Access 2003

PhilS

Luftcode:

    Dim ctl as Control
    For Each ctl In DeinForm.Controls
        If ctl.ControlType = acTextBox Then
            If ctl.Value Like "*xxx*" Then
                ctl.BackColor = vbRed
            End If
        End If
    Next ctl
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

ebs17

ZitatAufgrund der zahlreichen Felder möchte ich ungern mit Bedingter Formatierung arbeiten.
Diese ist zwar eine Performancebremse, wäre aber das Mittel der Wahl nach Deiner Beschreibung. Wenn Dir das händische Eintragen zu viel Arbeit ist, kannst Du ja auch einen Code schreiben. Mit etwas System kannst Du das Setzen per Schleifen umsetzen.

Ansonsten könnte man der Meinung sein, dass man sich bei der vorhandenen Gestaltung ganz schön verzettelt hat und ggf. über grundlegende Änderungen nachdenken könnte.
Mit freundlichem Glück Auf!

Eberhard

MaxP

Hallo,

@ Phil
Das ist es, was ich gesucht habe!
Habe noch acComboBox hinzugefügt.

Problem gelöst. Danke Euch.

Gruß
Max
Win 10 pro 64 bit, Access 2003