You might be surprised by this, but you can still back convert Access 2007 forms, reports and modules to Access 97! (Why is another matter, of course, but let’s presume that you need to…)
OK, first of all, you need to export them to text, which is explained here in far more detail than I care to explain it.
So now, when you fire up Access 97, and try and convert them by running this line:
Application.LoadFromText acForm, "YourFormName", "C:TempForm_frmTest.txt"
It fails, right? Well, you can easily change that by editing the text file itself…
First, change the version numbers at the top of the file:
Version =19 VersionRequired =19
9 works for me.
Then you need to remove all the GUIDs. They look this this:
GUID = Begin 0xb21bed116aee3346bbc0b25ad5c3d277 End
You also need to remove the NameMap, which is huge and looks like this:
delete all the way to the end of it:
NameMap = Begin 0x0acc0e55000000007e38f0c521a1da42a83ebc08b1debf8100000000813b3c7c , ...lots of lines deleted... 0x000000000000000000000000 End
Finally, any new properties need to be removed, like these lines:
AllowDesignChanges = NotDefault FELineBreak = NotDefault IMESentenceMode =3 NoSaveCTIWhenDisabled =1 OldBorderStyle =0
Just delete the whole lines.
Do that, save the file (under a new name, of course) and then try and import it. Hopefully this should sort them all.
If anyone’s interested in seeing an Open Source bit of .Net code to do it, leave me a comment and I’ll dig out MonoDevelop and try it 🙂