Ciao a tutti!
Volevo sottoporvi un mio problema... io utilizzo una macro che aggiorna i dati di una tabella e dopodichè la stampa in sequenza man mano che i dati vengono aggiornati di volta in volta. La macro è semplicissima del tipo:
FOR I = FINE.Value TO INIZIO.Value Step -1
REM .... AGGIORNO i dati etc.
Doc.print(PrintProperties())
NEXT
Il problema è che sembrerebbe che la macro aggiorni i dati molto più velocemente di quanto Calc impieghi ad elaborare ed inviare alla stampa la tabella in questione, e cosi ottengo delle stampe sbagliate che contengono in parte gia i dati aggiornati sebbene Calc stava ancora stampando la versione precedente.
Ho provato ad utilizzare la funzione WAIT dopo la chiamata a Doc.print() ma anche inserendo delle pause piu che generose una tantum il problema si ripresenta. Ora vorrei sapere 2 cose:
1) Esiste un modo per stampare il documento ed attendere che la stampa sia stata correttamente elaborata prima di procedere con la macro?
2) Come faccio a forzare l'aggiornamento del contenuto di un foglio Calc da macro?
Grazie mille per l'aiuto!
[Risolto] Macro Calc e problemi di stampa in sequenza
[Risolto] Macro Calc e problemi di stampa in sequenza
Ultima modifica di charlie il mercoledì 9 aprile 2014, 19:13, modificato 1 volta in totale.
Motivazione: Inserito Risolto e segno di spunta verde
Motivazione: Inserito Risolto e segno di spunta verde
OpenOffice 4.01 su Windows7
Re: Macro Calc e problemi di stampa in sequenza
viewtopic.php?f=26&t=5517&p=27370&hilit ... eet#p27370ghizzo74 ha scritto: ...
2) Come faccio a forzare l'aggiornamento del contenuto di un foglio Calc da macro?
...
Cerca di evitare le ripetizioni, grazie.
charlie
macOS 15.5 Sequoia: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 15.5 Sequoia: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Re: Macro Calc e problemi di stampa in sequenza
Ciao!
Mi rispondo da solo, visto che ho trovato la risposta e spero possa essere utile ad altri:
per far si che la stampa venga eseguita in modo sincrono, quindi la macro resta sospesa finché il processo di stampa non sarà processato completamente, bisogna inserire nelle PrintProperties quanto segue:
PrintProperties(0).Name = "Wait"
PrintProperties(0).Value = TRUE
Doc.print(PrintProperties())
Mi rispondo da solo, visto che ho trovato la risposta e spero possa essere utile ad altri:
per far si che la stampa venga eseguita in modo sincrono, quindi la macro resta sospesa finché il processo di stampa non sarà processato completamente, bisogna inserire nelle PrintProperties quanto segue:
PrintProperties(0).Name = "Wait"
PrintProperties(0).Value = TRUE
Doc.print(PrintProperties())
OpenOffice 4.01 su Windows7
