CompatibilityMode() funkcija
CompatibilityMode() funkcija kontroliuoja vykdymo laiko būseną ir veikia visą kodą, vykdomą atnaujinus būseną.
Naudokite šią funkciją atsargiai, apsiribokite, pavyzdžiui, dokumentų konvertavimu.
Compatible parinktis įjungia VBA suderinamumą modulio lygiu „LibreOffice Basic“ interpretatoriui.
Ši funkcija gali paveikti arba padėti šiose situacijose:
Sukuriamas išvardijimas naudojant Enum sakinį
VBA būsena vykdoma naudojant komandą RmDir. VBA pašalina tik tuščius katalogus, naudodama RmDir, tuo tarpu kai „LibreOffice Basic“ katalogą pašalina rekursyviai.
Changing behaviour of Basic Dir command. The directory flag (16) for the Dir command means that only directories are returned in LibreOffice Basic, while in VBA normal files and directories are returned.
CompatibilityMode() funkcijos gali būti privalomos, kai yra Compatible paskirtis arba VBASupport paskirtis kompiliatoriaus būsenos.
CompatibilityMode(True | False)
Pateikiama NOT tuščias katalogas iš file:///home/me/Test
Sub RemoveDir
CompatibilityMode( true )
RmDir( "file:///home/me/Test" )
End Sub
Naudojant CompatibilityMode( true ) programa sukelia klaidą, kitaip „Test“ katalogas ir visas jo turinys ištrinamas.
Modifikuojant Dir elgesį
Sub VBADirCommand
CompatibilityMode( true ) ' Taip pat rodo normalius failus
Entry$ = Dir( "file:///home/me/Tmp/*.*", 16 )
Total$ = ""
While Entry$ <> ""
Total$ = Total$ + Entry$ + Chr$(13)
Entry$ = Dir
Wend
MsgBox Total$
End Sub