ho necessità di archiviare dei dati da un foglio di calc in un altro file chiamato "archivio" inserendoli nella prima riga vuota disponibile. Avevo predisposto una macro che copiava i dati' , apriva un nuovo file e li inseriva sempre nella stessa riga e da lì poi potevo lavorarci. Adesso però ho l'esigenza di prelevare i dati da una riga (sempre la stessa A7:J7) che però contiene dati generati da formule (quindi dovrei fare un copia/ incolla speciale) e inoltre li dovrei inserire in un elenco quindi nella prima riga vuota. Pensavo di utilizzare la macro che allego inserendo la parte relativa al copia/incolla speciale ed alla ricerca della prima riga vuota ma non ci sono riuscito. Chiedo pertanto il vostro aiuto per risolvere il problema. Grazie mille.
Questa è la macro di partenza:
Codice: Seleziona tutto
REM ***** BASIC *****
Rem Attribute VBA_ModuleType=VBADocumentModu
Sub ApriDoc_CopiaRange
Dim DocName as object, DocUlr as string, dummy(), range as object
Doc = ThisComponent
Sheet = Doc.Sheets(10)
Range = Sheet.getCellRangeByName("A7:J7").getDataArray ' range da copiare
sFileName ="C:\Users\Desktop\Archivio.ods" ' file destinazione
DocUrl = ConvertToURL(sFileName)
DocName = StarDesktop.loadComponentFromURL (DocUrl, "_blank",0, Dummy() )
Sheet1 = DocName.Sheets(1)
dRange = Sheet1.getCellRangeByName("A7:J7") ' range destinazione che adesso dovrà essere variabile in base alla prima cella vuota
dRange.setDataArray(Range)
DocName.store
DocName.Close(true)
End Sub