Calc e registratore di Macro: non mi salva i parametri di filtro applicati

Buongiorno a tutti.
Ho un problema con CALC e il registratore di Macro, che non mi registra correttamente le impostazioni che applico nel filtro automatico in fase di registrazione.
Nello specifico, con il filtro automatico applicato, io seleziono 2 opzioni di quelle disponibili, ma quando riapplico la macro, queste impostazioni non vengono replicate, ma la tabella resta completa, come non avesse filtrato nulla.
Ho provato in piu’ modi, anche partendo dalla tabella sia già filtrata , che senza filtri applicati, ma il registatore di macro non fa correttamente la registrazione.
Perchè??
grazie, saluti.

Complemento

Grazie mille per l’informazione, un chiarimento per capire meglio il codice:

  1. Nel mio caso che devo filtrare 2 valori specifici, devo per forza impostare questi 2 valori da un posizione sul foglio, o posso indicarli piu’ direttamente con i rispettivi valori ?? NEl mio caso devo lasciare visibili solo i valori che hanno “SI” e “PARZIALE” nel range da G2 a G500.

  2. i risultati , come da filtro, devono essere sulla stessa tabella, non in posizione diversa, quindi devo omettere la parte della variabile “oDestino”? o come devo compilarla?

  3. Ho adattato la macro, ma ricevo un errore su tutte le righe “oFiltro.xxxxx” che mi danno “Errore 91, Variabile oggetto non impostata”, mentre invece la variabile .Filtro è impostata come Object.
    Ho anche provato ad ometterle e verificato che danno tutte errore, per cui non riesco a portare a fine la verifica della macro.

Grazie.

Per filtrare nello stesso posto consiglio di utilizzare Auto Filter.

Nella macro filtro avanzato, se si posiziona la destinazione nella stessa posizione dell’origine, verrà sostituita e l’origine dati andrà persa.

Grazie per la risposta.
Ma come uso questa funzione di AUTOFILTER all’interno della macro che mi ha fornito??
O che macro posso usare per filtrare per 2 valori fissi una tabella?
grazie.

Il filtro automatico e direttamente nel foglio di calcolo, non è macro.

E non è quindi gestibile tramite Macro, come possibile in VBA?

@Valle1975,

Il registratore, purtroppo, non ha ancora questa capacità. Ma è possibile fare qualcosa di simile con l’avanzato Filter Macro.

Sub AdvancedFilter   'Grafeno – ask.88558
Dim oDoc, oPlanAtiva, oPlan2, oIntervalo, oCriterios, oDestino, oFiltro As Object
oIntervalo = ThisComponent.Sheets.getByName( "Plan2" ).getCellRangeByName( "A1:b9" )  ' Fonte di dati.
oCriterios = ThisComponent.CurrentController.ActiveSheet.getCellRangeByName( "a14:b15" )  'Filtra posizione.
oDestino = ThisComponent.CurrentController.ActiveSheet.getCellRangeByName( "a20" )   'Posizione dei risultati.
oFiltro = oCriterios.createFilterDescriptorByObject( oIntervalo )
oFiltro.CopyOutputData = True
oFiltro.OutputPosition = oDestino.CellAddress
oFiltro.ContainsHeader = True
oIntervalo.Filter( oFiltro ) 'Filtrar
End Sub

ATTENZIONE: Se desideri fornire maggiori dettagli alla tua domanda, utilizza modifica in questione o aggiungi un commento di seguito. Grateful.

Se la risposta soddisfa le tue necessità, fai clic sulla palla Descrição da imagem a sinistra della risposta, per finire la domanda.