REM ***** BASIC ***** Option Explicit Sub Database_Date() DbaseForm.DbaseForm ("Scadenziario") End Sub Sub dbase_impegni() DbaseForm.DbaseForm ("Scadenziario_riunioni") End Sub Sub Agg_Anno() Dim oRange as Object REM oRange = ThisComponent.NamedRanges.GetByName("B1").ReferredCells oRange = ThisComponent.CurrentController.ActiveSheet.getCellRangeByName("B1") ThisComponent.LockControllers oRange.getcellbyposition(0, 0).Value = InputBox("Nuovo anno:", "Nuovo anno") ThisComponent.CalculateAll() ThisComponent.UnlockControllers End Sub Sub St_Fronte() Stampa.Stampa (TRUE) End Sub Sub St_Retro() Stampa.Stampa (FALSE) End Sub Sub Unlockall while ThisComponent.hasControllersLocked ThisComponent.UnlockControllers wend End Sub Sub Cancella_Impegni() Dim oTabella As Object Dim oDimensioni As Object rem Blocca visualizzazione e ricalcolo ThisComponent.LockControllers ThisComponent.enableAutomaticCalculation(False) Rem Estrae il range con nome oTabella = ThisComponent.NamedRanges.GetByName("Scadenziario_riunioni").ReferredCells Rem estrae le dimensioni del blocco oDimensioni = oTabella.getRangeAddress() if (oDimensioni.EndRow > 2) then REM se ci sono righe da cancellare Rem rimuove le righe dalla terza all'ultima (mantiene titoli e prima riga) oTabella.getRows().removeByIndex(2,oDimensioni.EndRow - 2) Rem cancella il contenuto della prima riga, salvo la formula che sta nell'ultima colonna oTabella = oTabella.getCellRangeByPosition (0,1,oDimensioni.EndColumn - 1, 1) oTabella.clearContents (com.sun.star.sheet.CellFlags.VALUE + _ com.sun.star.sheet.CellFlags.STRING + _ com.sun.star.sheet.CellFlags.DATETIME + _ com.sun.star.sheet.CellFlags.FORMULA) endif rem Ripristina visaulizzazione e ricalcolo ThisComponent.enableAutomaticCalculation(true) ThisComponent.UnlockControllers End Sub Sub Modulo1 End Sub
31 - Le macro - Modulo1