Pannello di Controllo Moderatore ]

[RISOLTO] macro Inserire i pulsanti del filtro automatico

Creare una macro - Scrivere uno script - Usare le API

[RISOLTO] macro Inserire i pulsanti del filtro automatico

Messaggioda chimico » domenica 2 dicembre 2018, 1:58

saluti ,

Voglio creare una macro di base in LibreOffice per inserire i pulsanti del filtro automatico nell'intervallo da "C1 a G1" in Sheet1 .
osservazione :
segue un file modello allegato e un'immagine della soluzione che sto cercando con Macro .
abbracci .
Schermata 2018-12-02 alle 08.43.33.png
Allegati
pulsante del filtro automatico.ods
(19.6 KiB) Scaricato 11 volte
Ultima modifica di chimico il lunedì 3 dicembre 2018, 17:23, modificato 2 volte in totale.
LibreOffice 5.4.4.2 no Windows 7
chimico
 
Messaggi: 95
Iscritto il: giovedì 22 novembre 2018, 16:20

Re: macro Inserire i pulsanti del filtro automatico

Messaggioda patel » lunedì 3 dicembre 2018, 10:23

prova il registratore di macro da Strumenti, macro, registra
applica i filtri manualmente e poi clicca su Termina Registrazione
-------------------
OpenOffice 4.1 e Libre Office 6.o.7.3 su Windows 10
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
patel
Volontario attivo
Volontario attivo
 
Messaggi: 3205
Iscritto il: venerdì 30 aprile 2010, 8:04
Località: Livorno

Re: macro Inserire i pulsanti del filtro automatico

Messaggioda chimico » lunedì 3 dicembre 2018, 11:15

saluti amico mio ,

Ho già provato il registratore di macro, ma non funziona per la regione da "C1 a G1" ?

ha il foglio di lavoro allegato per testare .

abbracci .
LibreOffice 5.4.4.2 no Windows 7
chimico
 
Messaggi: 95
Iscritto il: giovedì 22 novembre 2018, 16:20

Re: macro Inserire i pulsanti del filtro automatico

Messaggioda Gaetanopr » lunedì 3 dicembre 2018, 12:25

Ti allego tuo file con area definita "FILTRO" con il seguente range $Sheet1.$C$1:$G$337
Poi lancia la macro Filtro


Saluti
Allegati
pulsante del filtro automatico.ods
(19.85 KiB) Scaricato 11 volte
Openoffice 4.1 su windows xp
Gaetanopr
Volontario
Volontario
 
Messaggi: 2629
Iscritto il: mercoledì 21 novembre 2012, 21:07

Re: macro Inserire i pulsanti del filtro automatico

Messaggioda chimico » lunedì 3 dicembre 2018, 13:23

saluti Gaetanopr ,

Grazie per l'aiuto .

puoi aumentare l'area definita "FILTRO" con intervallo per più colonne, se aggiungo più colonne .

il numero di colonne può variare .

la macro deve "vedere" tutte le colonne con i valori e quindi inserire i "filtro" nelle colonne con i valori .


amici abbracci .
LibreOffice 5.4.4.2 no Windows 7
chimico
 
Messaggi: 95
Iscritto il: giovedì 22 novembre 2018, 16:20

Re: macro Inserire i pulsanti del filtro automatico

Messaggioda Gaetanopr » lunedì 3 dicembre 2018, 14:00

La prossima volta specifica meglio, perchè nel messaggio iniziale dicevi altro, usa questa macro
Codice: Seleziona tutto   Espandi visualeStringi visuale
Sub Filtro         'L' AREA DEFINITA Filtro DEVE ESSERE GIA' PRESENTE
Dim oDir As New com.sun.star.table.CellRangeAddress
Doc = ThisComponent
Sh = Doc.getSheets.getByName("Sheet1")
a = Sh.createCursor
a.gotoEndOfUsedArea(false)
LastRow = a.RangeAddress.EndRow
LastCol = a.RangeAddress.EndColumn

DB = ThisComponent.DataBaseRanges()
RBD = DB.getByName("Filtro")
Nome = "Filtro"
   If DB.hasByName(Nome) Then
      RBD = DB.getByName(Nome)
      oDir =  Sh.getCellrangeByPosition(2, 0, LastCol, LastRow).RangeAddress
      RBD.setDataArea( oDir )
    End if
RBD.AutoFilter = True      
End Sub


Saluti
Openoffice 4.1 su windows xp
Gaetanopr
Volontario
Volontario
 
Messaggi: 2629
Iscritto il: mercoledì 21 novembre 2012, 21:07

Re: macro Inserire i pulsanti del filtro automatico

Messaggioda chimico » lunedì 3 dicembre 2018, 17:14

[Risolto]

sr. Gaetanopr ,

                   Grazie mille per il tuo aiuto .

                  grazie per aver riformulato la macro .

                  È stato fantastico . :bravo:


amici abbracci .
LibreOffice 5.4.4.2 no Windows 7
chimico
 
Messaggi: 95
Iscritto il: giovedì 22 novembre 2018, 16:20


Torna a Macro e UNO API

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite