OK, decided just to take this one on as a challenge.
You can use the StrComp function like this:
StrComp(string1, string2,0) to see if they are the same. The 0 in the 3rd parameter slot tells it to do a "Database" compare - which means that it will differentiate between upper and lower case. Now, how to get a normal query to test out very character of a string? No need to. Just compare the Upper case version of the text to the text itself. If it's different, then it means there's a lowercase character in there somewhere.
I finally came up with a query expression. Place this into the "Field:" line of a blank column in your query design view. It will produce a column called Test.
Test: StrComp(UCase([your_string]),[your_string],0)=0
Then, in the Criteria line of that same column, put this:
False
Be sure to replace [your_string] with the actual field name from your table.
It should return all the cases where you've got lower case characters.