[Risolto]Evento click ballerino

Discussioni sull'applicazione per i fogli di calcolo
Rispondi
Avatar utente
Lanfranchi G.Luigi
Messaggi: 116
Iscritto il: venerdì 12 aprile 2019, 16:54

[Risolto]Evento click ballerino

Messaggio da Lanfranchi G.Luigi »

Buongiorno.
Mi trovo a confrontarmi con un problema (per me) strano.
Nel file allegato tirato all'osso, quando eseguo un doppio click nella colonna "Quantità" (AI) su una linea con dei valori in "costo"-"data" ecc, Calc dovrebbe eseguire la sub "Click".
Lo fà egregiamente.
Ma se io salvo il file e poi eseguo il doppio click nella colonna AI, su alcune righe (normalmente quelle più alte come riferimento 32-35) funziona ma sulle più basse no.
Calc mi va in input sulla casella selezionata senza azionare l'evento.
Help.... Grazie.
Allegati
Nudo.ods
(161.54 KiB) Scaricato 24 volte
Ultima modifica di Lanfranchi G.Luigi il martedì 27 agosto 2024, 8:32, modificato 2 volte in totale.
LibreOffice ver. 7.5.3.2 - Windows 10 Pro 64 bit
Avatar utente
Lanfranchi G.Luigi
Messaggi: 116
Iscritto il: venerdì 12 aprile 2019, 16:54

Re: Evento click ballerino

Messaggio da Lanfranchi G.Luigi »

Curiosità.
Nelle cartelle delle macro mi trovo una cartella di nome Humbertlambert vuota.
Se la cancello, quando riapro il file me la ritrovo ancora nella lista cartelle.
Ma che cosa è ?
Non so se voi la potete vedere nel file allegato perchè si trova nelle "macro e finestre di dialogo personali".
LibreOffice ver. 7.5.3.2 - Windows 10 Pro 64 bit
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8954
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Evento click ballerino

Messaggio da charlie »

Ciao,
Lanfranchi G.Luigi ha scritto: venerdì 23 agosto 2024, 16:35 su alcune righe (normalmente quelle più alte come riferimento 32-35) funziona ma sulle più basse no.
Leggi il codice .... :roll:

Codice: Seleziona tutto

 If row <4 or row>43  Then Exit Sub 'fuori target
Lanfranchi G.Luigi ha scritto: venerdì 23 agosto 2024, 16:35
Non so se voi la potete vedere nel file allegato perchè si trova nelle "macro e finestre di dialogo personali".
Ognuno vede solo le proprie.
charlie
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Avatar utente
Lanfranchi G.Luigi
Messaggi: 116
Iscritto il: venerdì 12 aprile 2019, 16:54

Re: Evento click ballerino

Messaggio da Lanfranchi G.Luigi »

Charlie grazie per la risposta.
Non ne capisco il senso però.
Se tu avessi letto il mio post avresti capito che il codice non può avere niente a che fare col problema.
Ti ho scritto che funziona tutto bene fino a che non salvo il file.
Solo dopo su alcune caselle calc non rileva più il doppio click.

If row <4 or row>43 Then Exit Sub 'fuori target - mi sembra che 32 35 siano nel target...
LibreOffice ver. 7.5.3.2 - Windows 10 Pro 64 bit
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8954
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Evento click ballerino

Messaggio da charlie »

Provato fino a riga 40, funziona.
charlie
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Avatar utente
lucky63
Volontario assiduo
Volontario assiduo
Messaggi: 3069
Iscritto il: martedì 18 maggio 2010, 17:01

Re: Evento click ballerino

Messaggio da lucky63 »

.
Ho testato il tuo file di esempio popolando il range D5:D44 con valori fittizi.
Nel range AI5:AI20 e talvolta anche in AI21 ho riscontrato l'anomalia che segnali.
Controllato il codice della macro sembra corretto.

Ma, funziona anche nel range AI5:AI21 dopo aver salvato il file con rimozione o commento iniziale o modifica da Integer a Long della seguente riga del codice:

Codice: Seleziona tutto

Dim Col as Integer
Allego file.
.
Allegati
Test - Macro - Evento DoppioClick.ods
(166.99 KiB) Scaricato 21 volte
Avatar utente
Lanfranchi G.Luigi
Messaggi: 116
Iscritto il: venerdì 12 aprile 2019, 16:54

Re: Evento click ballerino

Messaggio da Lanfranchi G.Luigi »

Lucky63 grazie per la risposta.
Anche il file da te postato non funziona.
Forse non mi sono spiegato bene.
Prova ad aprire il file e poi salvarlo. E' dopo un salvataggio che il problema si presenta.
Vedrai che nelle linee in alto dello schermo, il doppio click non verrà più rilevato mentre nelle lieee in basso dello schermo continuerà funzionare.
Dato che il codice che gestisce l'evento è sempre uguale per tutti e due i casi, presumo che non dipenda da quello...

NB doppio click nella colonna AI con valori nella colonna D.
LibreOffice ver. 7.5.3.2 - Windows 10 Pro 64 bit
Avatar utente
Lanfranchi G.Luigi
Messaggi: 116
Iscritto il: venerdì 12 aprile 2019, 16:54

Re: Evento click ballerino

Messaggio da Lanfranchi G.Luigi »

In effetti l'evento con il doppio click viene sempre rilevato.
La sub viene interrotta dalla riga

Codice: Seleziona tutto

If NOT Target.supportsService("com.sun.star.sheet.SheetCell") Then Exit Sub
Mettendo una semplice istruzione di

Codice: Seleziona tutto

Print "OK"
prima della riga incriminata il messaggio "OK" appare sempre.
Se si mette dopo la riga incriminata il messaggio alcune volte non appare.
La cosa strana è che solo dopo un salvataggio del file il problema si presenta. Cosa Cambia ?
A mio parere un anomalia di Calc.
Ho ulteriormente semplificato il file.
Ora qualsiasi doppio click nell area da AI5 a AI44 viene accettato.
Vedrete che ci sono due messaggi prima della riga incriminata "OK primo passaggio" e dopo la riga incriminata "OK Secondo passaggio".
Quando si salva il file il secondo passaggio viene ignorato su alcuni click.
Allegati
Nudo.ods
(152.51 KiB) Scaricato 17 volte
LibreOffice ver. 7.5.3.2 - Windows 10 Pro 64 bit
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8954
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Evento click ballerino

Messaggio da charlie »

Confermo il comportamento "ballerino" anche in OpenOffice dopo il salvataggio.

Inoltre se si esegue la macro in un nuovo file di calc vuoto, funziona sempre, prima e dopo un salvataggio.
charlie
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Avatar utente
Lanfranchi G.Luigi
Messaggi: 116
Iscritto il: venerdì 12 aprile 2019, 16:54

Re: Evento click ballerino

Messaggio da Lanfranchi G.Luigi »

Probabilmente il file è corrotto o qualche cosa al suo interno interferisce.
Ho eliminato tutto il codice salvo la sub click.
Ho eliminato tutte le celle condizionate.
Ho cancellato tutte le celle superflue o estranee sul foglio.
Ho cancellato il secondo foglio.
Eliminato tutti gli eventi programmati salvo il doppio click.
Mi sa che sarà molto difficile venirne a capo.
Grazie delle risposte.
Consigli o soluzioni sempre ben accetti....
LibreOffice ver. 7.5.3.2 - Windows 10 Pro 64 bit
Avatar utente
charlie
Site Admin
Site Admin
Messaggi: 8954
Iscritto il: mercoledì 19 dicembre 2012, 10:50
Contatta:

Re: Evento click ballerino

Messaggio da charlie »

Ho fatto copia/incolla su un nuovo file, aggiungendo la macro e assegnandola all'evento doppio clic del foglio.
Mi sembra che funzioni anche dopo diversi salvataggi del file.
Allegati
Senza nome 1.ods
(154.37 KiB) Scaricato 16 volte
charlie
macOS 14.6.1 Sonoma: Open Office 4.1.15 - LibreOffice 7.5.7.2
http://www.charlieopenoffice.altervista.org
Avatar utente
Lanfranchi G.Luigi
Messaggi: 116
Iscritto il: venerdì 12 aprile 2019, 16:54

Re: Evento click ballerino

Messaggio da Lanfranchi G.Luigi »

Grazie Charlie.
Farò un copia incolla del file originale che contiene molta più "roba".
Poi un copia incolla delle sub e vedrò...
LibreOffice ver. 7.5.3.2 - Windows 10 Pro 64 bit
Avatar utente
Lanfranchi G.Luigi
Messaggi: 116
Iscritto il: venerdì 12 aprile 2019, 16:54

Re: Evento click ballerino

Messaggio da Lanfranchi G.Luigi »

Ho eseguito un copia incolla dal file originale ad un nuovo file.
Tanta roba ma ne è valsa la pena (grazie).
L'errore non si ri presenta più. :bravo:
LibreOffice ver. 7.5.3.2 - Windows 10 Pro 64 bit
Rispondi