[Risolto] Cancellare una macro abbinata ad un evento
[Risolto] Cancellare una macro abbinata ad un evento
Salve a tutti , chiedo aiuto , mi servirebbe una "dritta" per ..........
Ho una Macro abbinata ad unevento in un foglio che all'apertura di open office , appena sposto il cursore su una cella , mi visualizza la data e l'ora corrente ( quella del PC) su un'altra cella "x"
Alla chiusura del file che avviene con un'altra macro abbinata ad un pulsante la quale mi salva il foglio di lavoro in una cartella c://............ vorrei che disabilitare la macro abbinata all'evento foglio in modo che quando riapro il file salvato precedentemente non mi cambiasse la data.........ogni aiuto e ben accetto , grazie
Ho una Macro abbinata ad unevento in un foglio che all'apertura di open office , appena sposto il cursore su una cella , mi visualizza la data e l'ora corrente ( quella del PC) su un'altra cella "x"
Alla chiusura del file che avviene con un'altra macro abbinata ad un pulsante la quale mi salva il foglio di lavoro in una cartella c://............ vorrei che disabilitare la macro abbinata all'evento foglio in modo che quando riapro il file salvato precedentemente non mi cambiasse la data.........ogni aiuto e ben accetto , grazie
Ultima modifica di ferro0099 il giovedì 23 dicembre 2021, 14:10, modificato 2 volte in totale.
Windows 10 - Open Office 4.1.1
Re: Cancellare una macro abbinata ad un evento
allega il file
-------------------
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
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
Re: Cancellare una macro abbinata ad un evento
Grazie Patel per l'interessamento , ti metto la cartella compressa
Il file che devi aprire inizialmente è il primo che vedi "lottti", nella cartella ci saranno in ordine per data gli altri creati , se li riapri e cambi qualcosa cambia la data , io vorrei che se li riapro e li modifico la data non cambiasse , la macro che lavora sulla data e sul numero crescente è abbinata al 1 foglio come evento
Il file che devi aprire inizialmente è il primo che vedi "lottti", nella cartella ci saranno in ordine per data gli altri creati , se li riapri e cambi qualcosa cambia la data , io vorrei che se li riapro e li modifico la data non cambiasse , la macro che lavora sulla data e sul numero crescente è abbinata al 1 foglio come evento
- Allegati
-
- per open.rar
- (49.99 KiB) Scaricato 82 volte
Windows 10 - Open Office 4.1.1
Re: Cancellare una macro abbinata ad un evento
Non ho scaricato il file, ma invece di cancellare la macro a chiusura file potresti fare in modo diverso, ad esempio la macro che scrive data e ora sulla cella x potrebbe fare una verifica su tale cella, cioè verificare che sia vuota e scrivere la data se già presente una data non fare nulla, in questo modo la data sarà scritta solo la prima volta e non alle riaperture del file
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
Openoffice 4.1.13 su windows 10
Re: Cancellare una macro abbinata ad un evento
Se invece vuoi disabilitare l'evento questo è il codice che devi inserire per togliere l'evento al foglio Scheda Clienteferro0099 ha scritto:........... vorrei che disabilitare la macro abbinata all'evento foglio in modo che quando riapro il file salvato precedentemente non mi cambiasse la data.........ogni aiuto e ben accetto , grazie
Codice: Seleziona tutto
thiscomponent.sheets.getByName("Scheda Cliente").Events.replaceByName("OnChange", "")
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
Openoffice 4.1.13 su windows 10
Re: Cancellare una macro abbinata ad un evento
Ma quanto ne sai !?!!??.....funziona alla grande , grazieGaetanopr ha scritto:Non ho scaricato il file, ma invece di cancellare la macro a chiusura file potresti fare in modo diverso, ad esempio la macro che scrive data e ora sulla cella x potrebbe fare una verifica su tale cella, cioè verificare che sia vuota e scrivere la data se già presente una data non fare nulla, in questo modo la data sarà scritta solo la prima volta e non alle riaperture del file
Windows 10 - Open Office 4.1.1
Re: Cancellare una macro abbinata ad un evento
funziona a metà , perchè quando salvo , la macro abbinata al evento foglio viene cancellata
inserendo come consigliato "thiscomponent.sheets.getByName("Scheda Cliente").Events.replaceByName("OnChange", "")"
inserendo come consigliato "thiscomponent.sheets.getByName("Scheda Cliente").Events.replaceByName("OnChange", "")"
Windows 10 - Open Office 4.1.1
Re: Cancellare una macro abbinata ad un evento
Nessuno riesce a darmi un'aiuto
Windows 10 - Open Office 4.1.1
Re: Cancellare una macro abbinata ad un evento
Prova così:
1) prima del salvataggio della copia inserisci la riga indicata da @Gaetanopr che rimuove l'associazione all'evento foglio/contenuto modificato
2) terminato il salvataggio inserisci le seguenti righeche ripristina l'associazione prima cancellata.
Come scritto nei commenti, le condizioni per il corretto funzionamento sono:
a) la/le macro devono essere salvate nel documento
b) la macro da associare all'evento si deve chiamare InsData
c) la macro da associare all'evento deve risiedere nella libreria Standard e nel modulo InsData
Saluti
Geo
1) prima del salvataggio della copia inserisci la riga indicata da @Gaetanopr
Codice: Seleziona tutto
rem rimuovo la macro associata all'evento foglio/contenuto modificato
ThisComponent.Sheets.getByName("Scheda Cliente").Events.replaceByName("OnChange", "")"
2) terminato il salvataggio inserisci le seguenti righe
Codice: Seleziona tutto
rem ripristino l'associazione della macro all'evento foglio/contenuto modificato
'ATTENZIONE: LE PROPRIETÀ DELL'EVENTO (LE 5 RIGHE SUCCESSIVE IL COMMENTO) SONO VALIDE SOLAMENTE SE
'LA MACRO DA ASSOCIARE SI CHIAMA InsData E RISIEDE NEL FILE, LIBRERIA Standard, MODULO InsData
Dim EventProps(1) as new com.sun.star.beans.PropertyValue
EventProps(0).Name = "EventType"
EventProps(0).Value = "Script"
EventProps(1).Name = "Script"
EventProps(1).Value = "vnd.sun.star.script:Standard.InsData.InsData?language=Basic&location=document"
ThisComponent.Sheets.getByName("Scheda Cliente").Events.replaceByName("OnChange",EventProps())
Come scritto nei commenti, le condizioni per il corretto funzionamento sono:
a) la/le macro devono essere salvate nel documento
b) la macro da associare all'evento si deve chiamare InsData
c) la macro da associare all'evento deve risiedere nella libreria Standard e nel modulo InsData
Saluti
Geo
LibO 7 su LinuxMint 21
Re: Cancellare una macro abbinata ad un evento
Grazie , e buone festività funziona !!!
Windows 10 - Open Office 4.1.1
Re: Cancellare una macro abbinata ad un evento
Sistema corretto per aggiungere ✔ [Risolto] viewtopic.php?f=2&t=5661
charlie
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
macOS 14.4.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org