Hiken
asked on
Change the color font on an access report
when my access report is viewed I would like it to change the fore color to a different color for the newest change that happened. So in a column if new data gets entered the fore color changes to red and the previous data gets changed from red back to black. So the only thing showing red is the newest piece of data
How do you identify the newest data?
you can use Conditional Formatting using an expression comparing other records to the unique value of the field that identify the newest change that happen..
you can use Conditional Formatting using an expression comparing other records to the unique value of the field (or combinations of fields) that identify the newest change that happen..
Here's an example where they changed the highlighted colors using Selection.Find.Highlight = True. Maybe you could apply something similar to your newest updates.
http://stackoverflow.com/questions/229865/vba-how-do-i-change-highlighted-text-to-a-different-color-in-ms-word
http://stackoverflow.com/questions/229865/vba-how-do-i-change-highlighted-text-to-a-different-color-in-ms-word
Sub ChangeColor
Options.DefaultHighlightCo lorIndex = wdBrightGreen
Selection.Find.ClearFormat ting
Selection.Find.Highlight = True
Selection.Find.Replacement .ClearForm atting
Selection.Find.Replacement .Highlight = True
Selection.Find.Execute Replace:=wdReplaceAll
Selection.Find.ClearFormat ting
Selection.Find.Font.Color = wdColorBrightGreen
Selection.Find.Replacement .ClearForm atting
Selection.Find.Replacement .Font.Colo r = wdColorRed
With Selection.Find
.Text = ""
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub
Options.DefaultHighlightCo
Selection.Find.ClearFormat
Selection.Find.Highlight = True
Selection.Find.Replacement
Selection.Find.Replacement
Selection.Find.Execute Replace:=wdReplaceAll
Selection.Find.ClearFormat
Selection.Find.Font.Color = wdColorBrightGreen
Selection.Find.Replacement
Selection.Find.Replacement
With Selection.Find
.Text = ""
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub
ASKER
Multiple people access the database. They basically type a number in a field and hit the enter key. this enters a date and time on the report. So the newest data is the last date/time that the computer put in the field
...and what about the "persistence" of this "newest" status?
At what point does a record move from being "newest" to say "existing/old"
Weekly? Daily?, per form Open/close?, Per database open/close, Per user?
At what point does a record move from being "newest" to say "existing/old"
Weekly? Daily?, per form Open/close?, Per database open/close, Per user?
<So in a column if new data gets entered the fore color changes to red and the previous data gets changed from red back to black.>
...What about changes to "existing" values?
...What about changes to "existing" values?
Number-1,
I think your code is only applicable for MS Word...
I think your code is only applicable for MS Word...
< this enters a date and time on the report. So the newest data is the last date/time that the computer put in the field>
you can get this information by using Dmax() function
you can get this information by using Dmax() function
<They basically type a number in a field and hit the enter key. this enters a date and time on the report.>
So is this "Date" is per field, or per record?
Perhaps it would be simple if you just posted a sample of this database, to avoid confusion...
Sample database notes:
1. Back up your database(s).
2. Combine the front and back ends into one database file.
3. Remove any startup options, unless they are relevant to the issue.
4. Remove any records unless they are relevant to the issue.
5. Delete any objects that do not relate directly to the issue.
6. Remove any references to any "linked" files (files outside of the database, Images, OLE Files, ...etc)
7. Remove any references to any third party Active-x Controls (unless they are relevant to the issue)
8. Remove, obfuscate, encrypt, or otherwise disguise, any sensitive data.
9. Compile the code. (From the database window, click: Debug-->Compile)
10. Run the compact/Repair utility.
11. Remove any Passwords and/or security.
12. Post explicit steps to replicate the issue.
13. Test the database before posting.
In other words, ...post a database that we can easily open and immediately see/troubleshoot the issue, and if applicable, also include a Graphical representation of the Exact results you are expecting.
JeffCoachman
So is this "Date" is per field, or per record?
Perhaps it would be simple if you just posted a sample of this database, to avoid confusion...
Sample database notes:
1. Back up your database(s).
2. Combine the front and back ends into one database file.
3. Remove any startup options, unless they are relevant to the issue.
4. Remove any records unless they are relevant to the issue.
5. Delete any objects that do not relate directly to the issue.
6. Remove any references to any "linked" files (files outside of the database, Images, OLE Files, ...etc)
7. Remove any references to any third party Active-x Controls (unless they are relevant to the issue)
8. Remove, obfuscate, encrypt, or otherwise disguise, any sensitive data.
9. Compile the code. (From the database window, click: Debug-->Compile)
10. Run the compact/Repair utility.
11. Remove any Passwords and/or security.
12. Post explicit steps to replicate the issue.
13. Test the database before posting.
In other words, ...post a database that we can easily open and immediately see/troubleshoot the issue, and if applicable, also include a Graphical representation of the Exact results you are expecting.
JeffCoachman
ASKER
I can't post the database, but I'll try and give an example of how the database is working
charles is looking at a receiving report that has and ID# for everything he needs to receive. Charles receives item1 by matching the ID# on the item to the ID# on the report. He types the id# into the database. The database looks up the ID# and put a date in this format 20060918-13:20 in a field called CargoReceived. This automatically prints a report to a different office showing the date and time item1 was received. When the report prints I want that data/time in the CargoReceived field to be red. Charles receives Item2 it should change item1 back to black and item2 now becomes red.
charles is looking at a receiving report that has and ID# for everything he needs to receive. Charles receives item1 by matching the ID# on the item to the ID# on the report. He types the id# into the database. The database looks up the ID# and put a date in this format 20060918-13:20 in a field called CargoReceived. This automatically prints a report to a different office showing the date and time item1 was received. When the report prints I want that data/time in the CargoReceived field to be red. Charles receives Item2 it should change item1 back to black and item2 now becomes red.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Thanks Capricorn1,
I should've check this out from your earlier post it got me what I needed
I should've check this out from your earlier post it got me what I needed