[Risolto] Calc Macro salva PDF con nome cella

Discussioni sull'applicazione per i fogli di calcolo
Rispondi
Edo1
Messaggi: 40
Iscritto il: sabato 3 maggio 2014, 14:39

[Risolto] Calc Macro salva PDF con nome cella

Messaggio da Edo1 »

Buongiorno so che sto chiedendo una cosa semplice ma non per me. cercando trovo tutto a parte quello.
Vorrei una macro che mi salva il foglio corrente in PDF con il nome preso da celle, in quanto e' un foglio dove richiamo i dati da una query del database tramite una macro, pulsante che richiama i dati, pulsante che fa il mio PDF e pulsante che chiude senza salvare.
Ho una macro che funziona ma trovata guardando in giro e mi salva solo la selezione io vorrei che esportasse i dati delle celle senza selezionarli.
Ho anche macro che mi salvano in PDF con nome cella prendendo dati da un certo range di celle, ma siccome i dati che richiamo a volte sono pochi e a volte sono anche 400 righe non posso dare un range di celle
Spero di essermi spiegato e grazie per qualche dritta, so che il problema sta i aSEL ma non so che valore dargli per esportare tutti i dati

Codice: Seleziona tutto

Sub ExportToPDF()
Dim mFilterData(0) As New com.sun.star.beans.PropertyValue
oDoc = ThisComponent
Sheet = oDoc.getCurrentController.ActiveSheet
aSel = oDoc.getCurrentSelection.RangeAddress
fname ="file:///home/edo/ownCloud/Base/ClienteDati/ " & ThisComponent.Sheets.Foglio1.getCellRangeByName("H1").String & ThisComponent.Sheets.Foglio1.getCellRangeByName("H2").String & ".PDF"
mFilterData(0).Name = "Selection"
mFilterData(0).Value = Sheet.getCellRangeByPosition(aSel.StartColumn, aSel.StartRow, aSel.EndColumn, aSel.EndRow)

'parametri di esportazione
Dim mStoreOpts(2) As New com.sun.star.beans.PropertyValue
mStoreOpts(0).Name = "Overwrite"
mStoreOpts(0).Value = True
mStoreOpts(1).Name = "FilterName"
mStoreOpts(1).Value = "calc_pdf_Export"
mStoreOpts(2).Name = "FilterData"
mStoreOpts(2).Value = mFilterData()
ThisComponent.storeToURL(fname, mStoreOpts())
end sub
Ultima modifica di charlie il giovedì 18 giugno 2020, 10:07, modificato 2 volte in totale.
Motivazione: Inserita ✔ verde.
Libreoffice 7.3.7.2
Kubuntu 22.04
patel
Volontario attivo
Volontario attivo
Messaggi: 4030
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: Calc Macro salva PDF con nome cella

Messaggio da patel »

mFilterData(0).Value = Sheet.getCellRangeByName("A1:E24") ' metti il tuo range
-------------------
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
Edo1
Messaggi: 40
Iscritto il: sabato 3 maggio 2014, 14:39

Re: Calc Macro salva PDF con nome cella

Messaggio da Edo1 »

Grazie della risposta ma io non voglio un range, carico dati che possono essere variabili in numero di righe, vorrei solo una volta caricati i dati esportarli in PDF indipendentemente da quante righe sono dando un nome preso da celle.
Un po come cliccare il pulsante esporta in PDF ma dando un nome preso da celle
Grazie
Libreoffice 7.3.7.2
Kubuntu 22.04
patel
Volontario attivo
Volontario attivo
Messaggi: 4030
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: Calc Macro salva PDF con nome cella

Messaggio da patel »

se è presente un solo foglio o comunque gli altri sono vuoti

Codice: Seleziona tutto

   Dim mStoreOpts(1) As New com.sun.star.beans.PropertyValue
   mStoreOpts(0).Name = "Overwrite"
   mStoreOpts(0).Value = True
   mStoreOpts(1).Name = "FilterName"
   mStoreOpts(1).Value = "calc_pdf_Export"
   oDoc.storeToURL(fname, mStoreOpts())
-------------------
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
Edo1
Messaggi: 40
Iscritto il: sabato 3 maggio 2014, 14:39

Re: Calc Macro salva PDF con nome cella

Messaggio da Edo1 »

Grazie va benissimo
Libreoffice 7.3.7.2
Kubuntu 22.04
Rispondi