Macro > seleziona celle >stampa celle selezionate

Creare una macro - Scrivere uno script - Usare le API
Rispondi
Barakkino
Messaggi: 130
Iscritto il: mercoledì 30 aprile 2014, 12:53

Macro > seleziona celle >stampa celle selezionate

Messaggio da Barakkino »

ciao,
ho fatto una macro con "registra", riesco a selezionare (macchiavellicamente) le celle da stampare, riesco a dare ordine di stampa ma poi mi si blocca tutto e continua a voler stampare... :evil: :knock:
dove sbaglio?

grazie
Allegati
MacroProva stampa.zip
(16.27 KiB) Scaricato 174 volte
openoffice 4 su win 10
patel
Volontario attivo
Volontario attivo
Messaggi: 4030
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: Macro > seleziona celle >stampa celle selezionate

Messaggio da patel »

bisognerebbe sapere cosa vuoi stampare
-------------------
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
Barakkino
Messaggi: 130
Iscritto il: mercoledì 30 aprile 2014, 12:53

Re: Macro > seleziona celle >stampa celle selezionate

Messaggio da Barakkino »

Grazie patel del tuo interessamento
Mi spiego meglio. Ho fatto una macro che seleziona delle celle e poi dovrebbe ordinare la stampa. Alla stampa si inceppa e non chiude la finestra di stampa
openoffice 4 su win 10
patel
Volontario attivo
Volontario attivo
Messaggi: 4030
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: Macro > seleziona celle >stampa celle selezionate

Messaggio da patel »

quali celle ? quale foglio ? per sapere se la macro è corretta occorre sapere cosa deve fare
-------------------
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
Barakkino
Messaggi: 130
Iscritto il: mercoledì 30 aprile 2014, 12:53

Re: Macro > seleziona celle >stampa celle selezionate

Messaggio da Barakkino »

ciao, Patel
questa è la macro che ho fatto con il "RegistraMacro"
Le celle da stampare vanno dalla colonna "A" alla colonna "O" la lunghezza delle righe è variabile a secondo degli articoli scritti.... e qui tutto bene. Ma all'ordine di stampare (sempre nella stessa macro) qualcosa non funziona, rimanendo sempre aperta la finestra della stampante e non potendola più chiudere se non con TaskManager (Ctrl+Alt+Canc).
Scusami i termini poco tecnici, ciao e grazie

Codice: Seleziona tutto

sub ProvaStampa
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "ToPoint"
args1(0).Value = "$A$1"

dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())

rem ----------------------------------------------------------------------
dim args2(1) as new com.sun.star.beans.PropertyValue
args2(0).Name = "By"
args2(0).Value = 1
args2(1).Name = "Sel"
args2(1).Value = false

dispatcher.executeDispatch(document, ".uno:GoDownToEndOfData", "", 0, args2())

rem ----------------------------------------------------------------------
dim args3(1) as new com.sun.star.beans.PropertyValue
args3(0).Name = "By"
args3(0).Value = 1
args3(1).Name = "Sel"
args3(1).Value = true

dispatcher.executeDispatch(document, ".uno:GoRightToEndOfData", "", 0, args3())

rem ----------------------------------------------------------------------
dim args4(1) as new com.sun.star.beans.PropertyValue
args4(0).Name = "By"
args4(0).Value = 1
args4(1).Name = "Sel"
args4(1).Value = true

dispatcher.executeDispatch(document, ".uno:GoRightToEndOfData", "", 0, args4())

rem ----------------------------------------------------------------------
dim args5(1) as new com.sun.star.beans.PropertyValue
args5(0).Name = "By"
args5(0).Value = 1
args5(1).Name = "Sel"
args5(1).Value = true

dispatcher.executeDispatch(document, ".uno:GoRightToEndOfData", "", 0, args5())

rem ----------------------------------------------------------------------
dim args6(1) as new com.sun.star.beans.PropertyValue
args6(0).Name = "By"
args6(0).Value = 1
args6(1).Name = "Sel"
args6(1).Value = true

dispatcher.executeDispatch(document, ".uno:GoRightToEndOfData", "", 0, args6())

rem ----------------------------------------------------------------------
dim args7(1) as new com.sun.star.beans.PropertyValue
args7(0).Name = "By"
args7(0).Value = 1
args7(1).Name = "Sel"
args7(1).Value = true

dispatcher.executeDispatch(document, ".uno:GoRightToEndOfData", "", 0, args7())

rem ----------------------------------------------------------------------
dim args8(1) as new com.sun.star.beans.PropertyValue
args8(0).Name = "By"
args8(0).Value = 1
args8(1).Name = "Sel"
args8(1).Value = true

dispatcher.executeDispatch(document, ".uno:GoRightToEndOfData", "", 0, args8())

rem ----------------------------------------------------------------------
dim args9(1) as new com.sun.star.beans.PropertyValue
args9(0).Name = "By"
args9(0).Value = 1
args9(1).Name = "Sel"
args9(1).Value = true

dispatcher.executeDispatch(document, ".uno:GoUpToStartOfData", "", 0, args9())

rem ----------------------------------------------------------------------
dim args10(1) as new com.sun.star.beans.PropertyValue
args10(0).Name = "By"
args10(0).Value = 1
args10(1).Name = "Sel"
args10(1).Value = true

dispatcher.executeDispatch(document, ".uno:GoUpToStartOfData", "", 0, args10())

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Print", "", 0, Array())


end sub
Ultima modifica di charlie il martedì 11 agosto 2015, 20:33, modificato 1 volta in totale.
Motivazione: Codificato codice
openoffice 4 su win 10
patel
Volontario attivo
Volontario attivo
Messaggi: 4030
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: Macro > seleziona celle >stampa celle selezionate

Messaggio da patel »

non capisco a cosa ti serve una macro che seleziona le celle da stampare, se il numero delle righe non è fisso non ti serve a niente anzi è controproducente.
-------------------
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
Barakkino
Messaggi: 130
Iscritto il: mercoledì 30 aprile 2014, 12:53

Re: Macro > seleziona celle >stampa celle selezionate

Messaggio da Barakkino »

ciao
il mio file (listino prezzi) è composto da 5.000 articoli suddivisi tra circa 40 fornitori (alcuni con solo 3/5 articoli altri centinaia). dal mio esempio non si vede, c'è solo un fornitore. Comunque io con filtro automatico seleziono il fornitore > premo il pulsante (almeno nelle mie intenzioni) >la macro dovrebbe evidenziare tutti gli articoli del fornitore in questione e stampare il listino con i vari prezzi (tre tipologie). In effetti la macro riesce a selezionare tutti gli articoli (sia che sia 1 o 100) ma alla stampa non funziona :crazy:
Non credo che sia una cosa inutile
openoffice 4 su win 10
patel
Volontario attivo
Volontario attivo
Messaggi: 4030
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: Macro > seleziona celle >stampa celle selezionate

Messaggio da patel »

visto che utilizzi il filtro che bisogno hai di selezionare ? non ti basta stampare solamente ?
-------------------
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
Barakkino
Messaggi: 130
Iscritto il: mercoledì 30 aprile 2014, 12:53

Re: Macro > seleziona celle >stampa celle selezionate

Messaggio da Barakkino »

ti ringrazio Patel per il tuo interessamento.
cerco di spiegarmi in un altro modo: ho una serie di colonne che derivano da un altro foglio dello stesso file che è sempre in "movimento" dove vengono inseriti nuovi dati. Dal foglio in questione io devo stampare solo alcune colonne e solo dopo averle filtrate ed ordinate.
senza macro devo: filtrare le colonne(nel caso base fornitore)>selezionare le colonne >ordinarle secondo un criterio (nel caso articolo crescente)>file>stampa solo celle selezionate> dare ok stampa e ottengo la stampa
con macro devo: filtrare le colonne (nel caso base fornitore)> premere pulsante e ottengo la stampa

certamente senza macro ottengo la stampa lo stesso ....io lo faccio ma un altra persona (collega) mi risulterebbe difficile

comunque veramente tante grazie, ti conosco per le tue capacità e gli aiuti che dai a tutti. Non credo che la tua sia polemica ma un modo di risolvere il mio problema che però a me mi è, scusami, difficile da capire.

grazie tante ancora e buona giornata
openoffice 4 su win 10
patel
Volontario attivo
Volontario attivo
Messaggi: 4030
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: Macro > seleziona celle >stampa celle selezionate

Messaggio da patel »

non voglio polemizzare, ma solo capire, ti faccio domande e tu non mi rispondi a tono, ti ho chiesto
visto che utilizzi il filtro che bisogno hai di selezionare celle ? non ti basta stampare solamente ?
forse con ci intendiamo sul linguaggio, selezionare delle celle non è lo stesso che filtrare.
-------------------
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
Barakkino
Messaggi: 130
Iscritto il: mercoledì 30 aprile 2014, 12:53

Re: Macro > seleziona celle >stampa celle selezionate

Messaggio da Barakkino »

Ciao Patel
Scusa dei miei modi bruschi ed un po "piccati" ma è solo un problema mio che non riesco a risolvere ribaltando il mio nervosismo su altri (tu).
Ciao e buona giornata.
openoffice 4 su win 10
patel
Volontario attivo
Volontario attivo
Messaggi: 4030
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: Macro > seleziona celle >stampa celle selezionate

Messaggio da patel »

non hai risposto ancora
-------------------
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
Barakkino
Messaggi: 130
Iscritto il: mercoledì 30 aprile 2014, 12:53

Re: Macro > seleziona celle >stampa celle selezionate

Messaggio da Barakkino »

non so più cosa dirti, comunque, anche se in modo "maccheronico" riderai un po per le mie "macro", mi sembra che funzioni. Guarda il file e dimmi cosa avrei dovuto dire per spiegarmi. Il foglio in questione è "listino generale".
PS in automatico non funziona "intestazione fornitore", lo sto facendo a mano. Aprirò un altro mex . Se mi puoi dire come intestarlo :D grazie
Allegati
Nuovo Cartella compressa.zip
(62.11 KiB) Scaricato 205 volte
openoffice 4 su win 10
patel
Volontario attivo
Volontario attivo
Messaggi: 4030
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: Macro > seleziona celle >stampa celle selezionate

Messaggio da patel »

io non rido delle tue macro, hai usato il registratore ed hai fatto bene. Non posso dirti come spiegarti perché solo tu sai cosa vuoi fare, solo devi non dare per scontato che chi ti legge ti legge anche nel pensiero.
-------------------
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