[Risolto] Intercettare posizione cursore e ricavare NrColonn

Discussioni sull'applicazione per i fogli di calcolo
Rispondi
Avatar utente
lucky63
Volontario assiduo
Volontario assiduo
Messaggi: 2996
Iscritto il: martedì 18 maggio 2010, 17:01

[Risolto] Intercettare posizione cursore e ricavare NrColonn

Messaggio da lucky63 »

Ciao.
Con il registratore di macro ho creato una macro per l'ordinamento in modo crescente di un'area dati ben definita
Nello specifico il parametro per ordinare la colonna B è rappresentato dalla riga:

Codice: Seleziona tutto

args1(6).Value = 2
Dove il valore 2 stà per colonna B. (1 per colonna A, 3 per colonna C, 4 per colonna D, …)
Vorrei cambiare tale riga in questa:

Codice: Seleziona tutto

args1(6).Value = NumeroColonna
dove NumeroColonna corrisponde al numero della colonna della cella selezionata all'attivazione della Macro.

Se con seleziono per esempio una qualsiasi cella della colonna C
Attivando la macro NumeroColonna dovrà risultare 3
così che args1(6).Value = NumeroColonna corrisponda a args1(6).Value = 3

Come modifico la macro per intercettare la posizione del cursore e ricavarmi NumeroColonna ?

Allego esempio che ordina per colonna B
Allegati
Esempio.ods
(16.19 KiB) Scaricato 151 volte
Ultima modifica di charlie il mercoledì 5 marzo 2014, 8:16, modificato 2 volte in totale.
Motivazione: Inserito segno di spunta verde
Gaetanopr
Volontario
Volontario
Messaggi: 3300
Iscritto il: mercoledì 21 novembre 2012, 20:07

Re: Intercettare posizione cursore e ricavare NrColonna in M

Messaggio da Gaetanopr »

Ciao puoi usare diversi metodi, te ne posto due dove col il primo ti ricavi la lettera "B" e con il secondo invece ti ricavi l'indice

Codice: Seleziona tutto

Colonna =  ThisComponent.getCurrentSelection.Columns.ElementNames(0)    ' B
NumeroColonna = ThisComponent.getCurrentSelection.cellAddress.Column + 1  ' 2
il secondo è valido solo per selezione di singole celle, se la selezione comprende più celle bisogna apportare qualche modifica.
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
Avatar utente
lucky63
Volontario assiduo
Volontario assiduo
Messaggi: 2996
Iscritto il: martedì 18 maggio 2010, 17:01

Re: Intercettare posizione cursore e ricavare NrColonna in M

Messaggio da lucky63 »

Ciao.
Ho utilizzato la seconda delle due.
Allego nuovamente l'esempio ora funzionante per colonna A B C
L'esempio gestisce area dati definita per A2:C1000
Per chi volesse utilizzarlo, avendo esigenze maggiori di colonne e righe, basta adattarne tale area all'esigenza.
Grazie.
Allegati
Esempio 01.ods
(16.47 KiB) Scaricato 189 volte
Rispondi