macro per esportazione celle

Discussioni sull'applicazione per i fogli di calcolo
Rispondi
nollino
Messaggi: 14
Iscritto il: venerdì 17 aprile 2015, 17:52

macro per esportazione celle

Messaggio da nollino »

Ciao a tutti, ho una macro che mi crea qualche problema.
Devo esportare una riga di dati da un foglio calc ad un altro. (b5:g5)
Faccio selezionare e copiare le celle che mi interessano, ma quando mi si apre il secondo file per la copia Calc mi chiede se voglio sovrascrivere le celle esistenti.
Chiaramente le "nuove" celle devono essere copiate nella riga sottostante.
Chi riesce a darmi qualche dritta? E dirmi dove sbaglio?
Grazie a tutti in anticipo!
Qui sotto la macro.

Codice: Seleziona tutto

 Sub rangecopy
    Dim oDocA As Object, oDocB As Object, oSheetA As Object, Dummy(), oRangeA as object, targetcell as object
    oDispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
    oDocA = ThisComponent
    oFrameA = oDocA.CurrentController.Frame
    oSheetA = oDocA.getSheets.getByIndex(0)
    LastRow = LastRow_InColumn(1, oSheetA)
    oRangeA = oSheetA.getCellRangeByName("b5:g5")
    oDocA.CurrentController.Select(oRangeA)
    oDispatcher.executeDispatch(oFrameA, ".uno:Copy", "", 0, Dummy())
    oDocB = StarDesktop.loadComponentFromURL ("file :\pippo.ods", "_blank",0, Dummy() )
    oSheetB = oDocB.getSheets.getByIndex(0)
    LastRow = LastRow_InColumn(0, oSheetB)
    targetcell= oSheetB.getCellByPosition(1, LastRow)
    oDocB.CurrentController.Select(targetcell)
    oFrameB = oDocB.CurrentController.Frame
    oDispatcher.executeDispatch(oFrameB, ".uno:Paste", "", 0, Dummy())
    oDocB.Store
    oDocB.close(true)
    End Sub

    Function LastRow_InColumn (ColumnIndex as long,Sheet as object) as long
    r=60
    do while Sheet.getCellByPosition(ColumnIndex,r).string = ""
      r = r - 1
    loop
    LastRow_InColumn = r + 1
    End Function
openoffice 4.1.1 win8
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8785
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: macro per esportazione celle

Messaggio da charlie »

Argomento spostato da Nuovi arrivati.
Codice macro "codificato".
charlie
macOS 14.3 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
nollino
Messaggi: 14
Iscritto il: venerdì 17 aprile 2015, 17:52

Re: macro per esportazione celle

Messaggio da nollino »

grazie
openoffice 4.1.1 win8
patel
Volontario attivo
Volontario attivo
Messaggi: 4016
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: macro per esportazione celle

Messaggio da patel »

allega 2 file di esempio in modo da testare la macro
-------------------
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
nollino
Messaggi: 14
Iscritto il: venerdì 17 aprile 2015, 17:52

Re: macro per esportazione celle

Messaggio da nollino »

Ciao Patel, il file in questione viene usato in rete, percui ci sarà da modificare il percorso delo file di destinazione..
Ho ancora un altra perplessità, cioè nel campo C5 "descrizione" c'è una formula di "cercavert" per trovare il valore in un altro foglio.
Dalle prove che ho fatto però , mi ritrovo il campo "descrizione" del fie di arrivo con la formula ma non con il dato che mi aspetto.

Grazie
Allegati
Modulo rilevamento1.ods
(17.12 KiB) Scaricato 113 volte
openoffice 4.1.1 win8
patel
Volontario attivo
Volontario attivo
Messaggi: 4016
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: macro per esportazione celle

Messaggio da patel »

io non ho il tuo file di destinazione, ma con uno mio di prova non mi chiede se voglio sovrascrivere le celle
Non allegare file senza dati, ovviamente io non so cosa scriverci
-------------------
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
nollino
Messaggi: 14
Iscritto il: venerdì 17 aprile 2015, 17:52

Re: macro per esportazione celle

Messaggio da nollino »

Hai ragione, sono giorni che non ne vengo a capo e tendo a dare per scontato parecchie cose.
invece per questo:
"Ho ancora un altra perplessità, cioè nel campo C5 "descrizione" c'è una formula di "cercavert" per trovare il valore da un altro foglio.
Dalle prove che ho fatto però , mi ritrovo il campo "descrizione" del fie di arrivo con la formula ma non con il dato che mi aspetto. "
lo hai provato?
I dati sono nel foglio2. e nella C5 c'è una formula di cercavert.
Grazie
openoffice 4.1.1 win8
patel
Volontario attivo
Volontario attivo
Messaggi: 4016
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: macro per esportazione celle

Messaggio da patel »

inutile darmi ragione,se vuoi una risposta allega i file con i dati già inseriti
-------------------
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Rispondi