LibreOffice 24.8 Hjælp
Funktionen CompatibilityMode() (kompatibilitets_tilstand()) kontrollerer eller forespørger om afviklingstilstanden. Den påvirker al kode, der afvikles efter indstilling eller nulstilling af afviklingstilstanden.
Brug den funktionalitet med forsigtighed. Begræns den til for eksempel til dokumentkonvertering.
CompatibilityMode (Kompatibilitets_tilstand) (Optional Enable As Boolean (kan_valgfrit_aktiveres_som_Boolsk)) som_Boolsk
CompatibilityMode function always returns the mode that is active after its execution. That is, if called with an argument, it returns the new mode; if called without an argument, it returns the active mode without modifying it.
Aktiver: Sætter eller afsætter kompatibilitets-tilstand, når argumentet er tilstede.
Funktionen CompatibilityMode (kompatibilitets-tilstand) relaterer til Option VBASupport 1 (Indstillingen VBA-understøttelse 1), i hvilket tilfælde den altid returnerer True (sand). Den relaterer ikke til kompiler-direktivet Option Compatible.
Denne funktion kan påvirke eller hjælpe i følgende situationer:
Gyldighedsområde for variable.
Kørsel af kommandoen RmDir i VBA-tilstand. I VBA fjernes kun tomme mapper med RmDir, mens LibreOffice Basic fjerner en mappe rekursivt.
Ændring af Basic-kommandoen Dirs adfærd. Mappeflaget (16) ved kommandoen Dir betyder, at udelukkende mapper returneres i LibreOffice Basic, mens filer og mapper normalt returneres i VBA.
Beregning af farvekomponenter med funktionerne Red (rød) og Blue (blå), som ombyttes (Funktionen Green (grøn) påvirkes ikke).
Givet en IKKE-tom mappe på file:///home/me/Test
Sub RemoveDir
MsgBox CompatibilityMode() ' False
CompatibilityMode( True )
RmDir( "file:///home/me/Test" )
CompatibilityMode False
MsgBox CompatibilityMode ' False
End Sub
Med CompatibilityMode( True ) (kompatibilitets-tilstand (sand)) hejser programmet et fejlflag, eller slettes mappen Test og al dens indhold.
Ændring af Dirs adfærd
Sub VBADirCommand
CompatibilityMode( Enable := True ) (Kompatibilitets-tilstand (Aktiver = Sand)) ' Viser også normale filer
Entry$ = Dir( "file:///home/me/Tmp/*.*", 16 )
Total$ = ""
While Entry$ <> ""
Total$ = Total$ + Entry$ + Chr$(13)
Entry$ = Dir
Wend
MsgBox Total$
CompatibilityMode( Enable := True ) (Kompatibilitets-tilstand (Aktiver = Falsk)) ' Viser kun mapper
End Sub