Sounds like your VBA may be suffering from some corruption or confusion.
Have you tried to decompile/recompile your code?
Here is a standard sequence to try to rescue a corrupted mdb
0. Make a backup copy of the file.
00. Make a backup copy of the file.
1. Uncheck the boxes under:
Tools | Options | General | Name AutoCorrect
Explanation of why:
http://allenbrowne.com/bug-03.html
2. Compact the database to get rid of this junk:
Tools | Database Utilities | Compact
3. Close Access. Make a backup copy of the file.
Decompile the database by entering something like this at the command
prompt while Access is not running. It is all one line, and includes the quotes:
"c:\Program Files\Microsoft office\office\msaccess.exe" /decompile
"c:\MyPath\MyDatabase.mdb"
4. Open Access, and compact again.
5. Open a code window.
Choose References from the Tools menu.
Uncheck any references you do not need.
For a list of the ones you typically need in your version of Access, see:
http://allenbrowne.com/ser-38.html
6. Still in the code window, choose Compile from the Debug menu.
Fix any errors, and repeat until it compiles okay.
At this point, you should have a database where the name-autocorrect errors
are gone, the indexes are repaired, inconsistencies between the text- and
compiled-versions of the code are fixed, and reference ambiguities are resolved.
If it is still a problem, the next step would be to get Access to rebuild the
database for you. Follow the steps for the first symptom in this article:
Recovering from Corruption
at:
http://allenbrowne.com/ser-47.html
--
Allen Browne - Microsoft MVP. Perth, Western Australia.
Tips for Access users -
http://allenbrowne.com/tips.html Reply to group,
rather than allenbrowne at mvps dot org.
John Spencer
Access MVP 2002-2005, 2007-2009
The Hilltop Institute
University of Maryland Baltimore County
Hydra wrote:
> If I just skip the if statement (since I know the ifle exists)
> then
>
> appAccess.OpenCurrentDatabase strDB
>
> Where strDB = "C:\Cobra Conversion\MSP-CobraConversion.mdb"
>
> Throws an error that says thte database is missing or opened exclusively by
> another user, when I know it is there and not open.
>
>
>
> "John Spencer" wrote:
>
>> The statement
>> If Len(Dir("C:\Cobra Conversion\MSP-CobraConversion.mdb")) > 0 Then
>> works for me.
>>
>> Check your library references.
>> Check that you don't have a function named Len or Dir that you have created in
>> your VBA code
>>
>> John Spencer
>> Access MVP 2002-2005, 2007-2009
>> The Hilltop Institute
>> University of Maryland Baltimore County
>>
>> Hydra wrote:
>>> If Len(Dir("C:\Cobra Conversion\MSP-CobraConversion.mdb")) > 0 Then
>>>
>>> or
>>>
>>> If Not Dir("C:\Cobra Conversion\MSP-CobraConversion.mdb") is Nothing
>>>
>>> both throw an error that says type mismatch.
>>>
>>> I don't see a problem with either one.
>>>
>>>
>>> ????