Guida di LibreOffice 7.1
La funzione CompatibilityMode() controlla il modo del tempo di esecuzione (runtime) e riguarda tutto il codice eseguito dopo aver (re)impostato il modo.
Utilizzate questa funzione con cautela, limitatela, per esempio, alla conversione di documenti.
Option Compatible attiva la compatibilitĂ VBA a livello di modulo per l'interprete di LibreOffice Basic.
Questa funzione può interessare o aiutare nelle situazioni sotto specificate:
Creazione di enumerazioni con l'istruzione Enum
Avvio del comando RmDir nel modo VBA. In VBA solo le directory vuote vengono rimosse da RmDir, mentre LibreOffice Basic le rimuove in modo ricorsivo.
Cambio del comportamento Dir di Basic. Il flag di directory (16) per il comando Dir indica che vengono restituite solo directory in LibreOffice Basic, mentre in VBA vengono restituiti normali file e directory.
La funzione CompatibilityMode() si potrebbe rendere necessaria durante il riordinamento delle modalitĂ di compilazione in Option Compatible o Option VBASupport.
CompatibilityMode(True | False)
Specificata una directory NON vuota in file:///home/me/Test
Sub RemoveDir
CompatibilityMode( true )
RmDir( "file:///home/me/Test" )
End Sub
Con CompatibilityMode( true ) il programma produce un errore, altrimenti viene eliminata la directory Test e tutto il suo contenuto.
Modifica del comportamento Dir
Sub VBADirCommand
CompatibilityMode( true ) ' Mostra anche file normali
Entry$ = Dir( "file:///home/me/Tmp/*.*", 16 )
Total$ = ""
While Entry$ <> ""
Total$ = Total$ + Entry$ + Chr$(13)
Entry$ = Dir
Wend
MsgBox Total$
End Sub