Salve. Apro un nuovo argomento perchè mi pare sia in discrepanza con quanto discusso nel tema precedente,seppur su un percorso comune ma era giusto comunque non fare confusione. In questo caso e prendendo a riferimento il file immagine vorrei capire se è possibile applicare sul foglio di lavoro un pulsante per disattivare una qualsiasi macro operativa e quale criterio occorre usare. La domanda è rivolta ovviamente a chiunque. Grazie
Ciao, posso chiederti a cosa ti serve? se ti serve per poter fare funzionare la macro solo nell’area A1:F15 nel precedente argomento la macro che ti avevo creato agisce in questo modo.
Dovresti spiegarti meglio allegando file ods e non immagini, quando dici una qualsiasi macro sei abbastanza generico, possono esserci diverse macro che agiscono su un foglio di lavoro, ti riferisci a macro collegate agli eventi del foglio?
Quello che vuoi si può fare ma devi essere più preciso.
Ciao,sì scusami. Mi riferivo a una macro collegata agli eventi del foglio,in questo caso la tua o anche a quella di Gilberto. Metter quindi un bel pulsante (a destra in questo caso) in modo da poter comodamente disattivare (o eventualmente riattivare la macro) ogni volta che si vuole e cliccandoci sopra (sul pulsante intendo). Ti mando il file ODS
cambio colore celle_gaetanopr.ods (20.3 KB)
Ti allego file con pulsante che assegna\toglie la macro colore all’evento “selezione modificata” del Foglio1.
cambio colore celle_gaetanopr.ods (20.7 KB)
Ok grazie mille. Una curiosità : questa tua macro con pulsante Attiva/Disattiva si può applicare con qualsiasi macro/contesto collegata/o all’evento “selezione modificata” ?
Certo, puoi cambiare macro e pure evento, se la analizzi vedrai in una riga di codice il nome della macro e in un’altra riga il nome in inglese dell’evento.
Ciao di nuovo Gaetano. Scusa il disturbo,non riesco ad applicare la tua macro attiva/disattiva anche sul file di Gilberto. Se puoi gentilmente aiutarmi,altrimenti chiudo il Topic,non c’è alcun problema,ci mancherebbe altro. Grazie,una buona serata
Ecco
sub Macro(Target)
If Target.Source.Model.Label = "Disattivata" Then
SMacro = "vnd.sun.star.script:Standard.Module1.COLORAREsi?language=Basic&location=document" ' riga modificata
Target.Source.Model.Label = "Attivata"
elseif Target.Source.Model.Label = "Attivata" Then
SMacro = ""
Target.Source.Model.Label = "Disattivata"
End if
dim Prop(1) as new com.sun.star.beans.PropertyValue
Prop(0).name = "EventType"
Prop(0).value = "Script"
Prop(1).name = "Script"
Prop(1).value = SMacro
thiscomponent.sheets.getByName("Foglio1").Events.replaceByName("OnSelect", Prop())
end Sub
cambio colore celle_GS.ods (20.7 KB)
Grazie mille Gaetano. Chiudo il topic,una buona serata