Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Access 2010 bedingte Formatierung in VBA eines Formulars

Mitglied: Aximand

Aximand (Level 1) - Jetzt verbinden

22.08.2018 um 09:46 Uhr, 1127 Aufrufe, 3 Kommentare

In einem Formular werden mir bsplw. 3 Datensätze angezeigt. Unter anderem ist das Feld "Liefertag" pro Tupel vorhanden.
Wie kann ich nun beim Form_Load erreichen, dass das Feld "Liefertag" in Abhängigkeit Zeitdifferenz zum Tagesdatum (datediff("d", Liefertermin.Value, Date) eingefärbt wird? Prinzipiell funktioniert der Code zum einfärben,
ABER: Es scheint mir so, als würde lediglich die erste Zeile geprüft und dann das Feld in den Folgezeilen ebenso mit der Farbe aus Zeile 1 eingefärbt.

Kann mir das jemand 'erklären' oder näherbringen. In Excel ist das relativ einfach, ich habe mich jetzt aber eben auch mal an Access herangewagt...

01.
Private Sub Form_Load()
02.

03.
Dim FC As FormatCondition
04.

05.
With Form_offeneWE.Liefertermin
06.
    .FormatConditions.Delete
07.
   
08.
    Set FC = .FormatConditions.Add(acExpression, acLessThanOrEqual, datediff("d", Liefertermin.Value, Date), 2)
09.
    FC.BackColor = RGB(255, 48, 48)
10.
    Set FC = .FormatConditions.Add(acExpression, acGreaterThan, datediff("d", Liefertermin.Value, Date), 4)
11.
    FC.BackColor = RGB(255, 0, 0)
12.

13.
End With
14.
End Sub
Mitglied: colinardo
LÖSUNG 22.08.2018, aktualisiert um 11:32 Uhr
Servus,
kein Problem.
01.
Private Sub Form_Load()
02.
    Dim fc As FormatCondition
03.
    With Liefertermin
04.
        .FormatConditions.Delete
05.
        With .FormatConditions.Add(acExpression, Expression1:="DateDiff(""d"",[Liefertermin],Date()) <= 2")
06.
            .BackColor = RGB(255, 48, 48)
07.
            .Enabled = True
08.
        End With
09.
        With .FormatConditions.Add(acExpression, Expression1:="DateDiff(""d"",[Liefertermin],Date()) > 4")
10.
            .BackColor = RGB(255, 0, 0)
11.
            .Enabled = True
12.
        End With
13.
    End With
14.
End Sub
Grüße Uwe
Bitte warten ..
Mitglied: Aximand
22.08.2018 um 11:31 Uhr
Super, Daaaanke Uwe.

Verstehe ich noch nicht so ganz im Detail (das ist meinen rudimentären VBA Kenntnissen geschulder), aber immerhin funktioniert es!

Vermutlich habe ich noch hunderte andere Fragen weil ich die Lösungen nicht über die Websuche oder hier finde ^^
Bitte warten ..
Mitglied: colinardo
22.08.2018, aktualisiert um 11:41 Uhr
Zitat von Aximand:
Verstehe ich noch nicht so ganz im Detail (das ist meinen rudimentären VBA Kenntnissen geschulder), aber immerhin funktioniert es!
Bei einer Expression findet der Vergleich in der Expression statt nicht mit dem Expression2 Parameter und das ganze muss ein String sein, damit der richtig in der Expression landet und nicht schon ausgewertet dort landet, genau das was du gerade falsch machst, du benutzt die DateAdd Funktion direkt und diese liefert als Expression nur das Ergebnis eines Vergleichs eines aktuellen Wertes der Tabelle zurück. Expression2 wird nur verwendet wenn als Vergleich "Between" etc. genutzt wird, also zwei Werte benötigt werden.

Viel fieser ist es wenn du die Formatcondition direkt in der Oberfläche eintippeln musst, da ist dann alles einzudeutschen inkl. Funktionen und sogar "Parameter" wie anstatt "d" dann "t", da bin ich früher auch immer drüber gestolpert.
Bitte warten ..
Ähnliche Inhalte
Datenbanken
Syntaxfehler VBA Access 2010
gelöst Frage von Dr.CornwallisDatenbanken6 Kommentare

Liebe Gemeinde, ich habe (schon wieder) einen Fehler im Code und ich komm einfach nicht drauf warum es nicht ...

VB for Applications
VBA Code Änderung Access 2010
gelöst Frage von Dr.CornwallisVB for Applications6 Kommentare

Liebe Gemeinde, ein Kollege hat mir einmal einen VBA Code zur Ermittlung des 1. und 5. Arbeitstags eines Monats ...

Datenbanken

Access 2010 - Filter für Datum funkioniert nicht VBA

Frage von Dr.CornwallisDatenbanken4 Kommentare

Liebe Gemeinde, folgendes Szenario: 2 Textfelder in einem Fomular: txtDatvon und txtDatBis mit diesen beiden Feldern möchte ich das ...

Microsoft Office

Kreuztabelle Access + VBA Code

Frage von Dr.CornwallisMicrosoft Office7 Kommentare

Hallo zusammen, ich habe eine Kreuztabelle aus einer Query erzeugt, aus dieser entsteht wiederum ein Bericht, nun habe ich ...

Neue Wissensbeiträge
Administrator.de Feedback
Was als Noob hier mal gesagt werden musste
Information von th30ther vor 4 StundenAdministrator.de Feedback

Moinsen wertes Forum, ich möchte mich an dieser Stelle mal beim Forum generell und bei aqui speziell bedanken! Ich ...

Netzwerkmanagement

Neue Angebotsmail ist raus: 10 Prozent auf alle Docusnap Lizenzen

Information von Frank vor 10 StundenNetzwerkmanagement

Hallo IT-Pros, unsere Angebotsmail ist raus: Exklusive für unsere Administrator.de-Mitglieder gibt es heute auf alle Miet- und Kauflizenzen von ...

Windows 10
Windows 10 Mai 2019 Update (Version 1903) ist da
Information von kgborn vor 14 StundenWindows 103 Kommentare

Nur ein kurzer Infosplitter: Microsoft hat die Nacht (21. Mai 2019) das Funktionsupdate auf Windows 10 Version 1903 freigegeben. ...

E-Mail

Newsletter: Unread News - IT News in Byte Länge

Tipp von franktaylor vor 1 TagE-Mail9 Kommentare

Hallo, würde gerne auf einen Newsletter hinweisen, den ich heute per Zufall gefunden und mit euch gerne teilen möchte: ...

Heiß diskutierte Inhalte
Windows Server
Passwortänderung an RODC möglich?
Frage von DexthaWindows Server23 Kommentare

Hallo, ich habe einen RODC, auf welchen ich über ldaps (Web-Seite mit php7) Passwortänderungen durchführen möchte. Ist das grundsätzlich ...

Windows Server
Ungewollte IP Änderung am DC sorgt für Probleme
Frage von thomas-99Windows Server19 Kommentare

Hallo Zusammen, wir haben ein kleines Netz mit 5 verschiedenen VMs (DC, AD, Fileserver, Exchange, TK Anlage - alle ...

Windows Server
RDP als Citrix Alternative
gelöst Frage von samreinWindows Server19 Kommentare

Hallo zusammen, ich bin neu hier und das ist mein erster Beitrag. Ich bin Einzeladmin und wir setzen bei ...

Hyper-V
Novell virtualisieren
Frage von spoboeHyper-V18 Kommentare

Hallo zusammen, ich habe absolut keine Ahnung von Novell, aber wir haben hier ein ganz altes Schätzchen (vermutlich Novell ...