Pagina 1 di 1

[Risolto] Macro di Calc che non funziona in LibreOffice

Inviato: sabato 13 maggio 2023, 12:06
da charlie
Ciao a tutti, in questa vecchia discussione viewtopic.php?p=21929#p21929, @Gaetanopr proponeva una macro da associare alla cella attiva per inserire una data da un controllo data di un formulario.
In OpenOffice funziona, in Libreoffice no.

Codice: Seleziona tutto

Sub CampoData()                          
                                         ' ESEMPIO 1
   Dim Doc AS Object
   Dim Sheet As Object
   Dim DrawPage As Object
   Dim Form As Object
   Dim Ctl As Object
   Dim oCell 
   
   Doc = StarDesktop.CurrentComponent
   Sheet = Doc.Sheets.GetByIndex(0)
   DrawPage = Sheet.DrawPage
   Form = DrawPage.Forms.GetByIndex(0) 
   Ctl = Form.getByName("Campodata1")      'Campo data  (Controllo del formulario)
   
   ActiveCell=ThisComponent.CurrentSelection

   ActiveCell.value = CDateFromIso(Ctl.Date)  
   ActiveCell.NumberFormat=75 
  
   ActiveCell=thisComponent.currentSelection.CellAddress
   col=ActiveCell.column
   row=ActiveCell.row

   oRanges = Sheet.getCellByPosition(col, row + 1)
   Doc.CurrentController.Select(oRanges)
  
         
End Sub

dà errore run time " valore per la proprietà errato" alla riga:

Codice: Seleziona tutto

ActiveCell.value = CDateFromIso(Ctl.Date)  
Cosa occore cambiare?

Re: Macro di Calc che non funziona in LibreOffice

Inviato: domenica 14 maggio 2023, 8:01
da patel
Puoi allegare un file di esempio ?

Re: Macro di Calc che non funziona in LibreOffice

Inviato: domenica 14 maggio 2023, 8:15
da charlie
Certo il file è quello di gaetanoPr nel link:

Re: Macro di Calc che non funziona in LibreOffice

Inviato: lunedì 15 maggio 2023, 12:33
da patel
prova questo

Re: Macro di Calc che non funziona in LibreOffice

Inviato: lunedì 15 maggio 2023, 13:40
da charlie
Perfetta, grazie.
Funziona sia in Libreoffice che in OpenOffice :super: .