Condividi tramite

Filtro tipo data tabella pivot aggiornato automaticamente alla data odierna

Anonimo
2018-10-05T23:01:21+00:00

Ciao a tutti.

Ho una pivot che restituisce una serie di informaizoni tipo nome cliente, orario di arrivo, servizio prenotato

con il filtro sulla data. L apivot prende i dati da una tabella con lo storico di tutte le prenotazioni, aggiornato quotidianamente.

Come posso creare una macro per impostare automaticamente il valore della data nel filtro della tabella pivot

pari al valore della funzione +OGGI() ?

Voglio visualizzare con un solo click di esecuzione della macro quelli che saranno i clienti che verrano in negozio nella data odierna.

Grazie.

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

1 risposta

Ordina per: Più utili
  1. Anonimo
    2018-10-06T13:42:12+00:00

    Insernedo il campo della data come "campo filtro" (vedi immagine):

    Vedi anche questo file di esempio: File esempio

    Nel Modulo1 del progetto vba ho inserito questo codice:

    '---

    Option Explicit

    Const sFoglioPivot As String = "Foglio2"      ' Nome Foglio della tabella pivot

    Const sNomePivot As String = "Tabella_pivot1" ' Nome Tabella Pivot

    Const sNomeCampoData As String = "Data"       ' Intestazione del campo data

    Sub FiltraPivotDataOdierna()

       'Imposta il filtro in base alla data odierna

       Dim oPivot As PivotTable

       Dim oField As PivotField

       Set oPivot = ThisWorkbook.Worksheets(sFoglioPivot).PivotTables(sNomePivot)

       With oPivot

          .PivotCache.Refresh

          Set oField = .PivotFields(sNomeCampoData)

          On Error Resume Next

          With oField

             .ClearAllFilters

             .CurrentPage = Date

          End With

          On Error GoTo 0

       End With

    End Sub

    Sub EliminaFiltroDataOdienra()

       'Elimina il filtro

       Dim oPivot As PivotTable

       Dim oField As PivotField

       Set oPivot = ThisWorkbook.Worksheets(sFoglioPivot).PivotTables(sNomePivot)

       With oPivot

          .PivotFields(sNomeCampoData).ClearAllFilters

       End With

    End Sub

    '---

    La risposta è stata utile?

    0 commenti Nessun commento