Pagina 3 di 3

Filtrare righe alternate di una tabella

Inviato: mar 13 lug 2021, 10:17
da Gennaro_64
Enrico Galli ha scritto: lun 12 lug 2021, 3:32 Ciao, giusto per dare un'alternativa, ecco un'altra possibile sintassi :wave:

Codice: Seleziona tutto

// Tabella1
let
    Origine = Excel.CurrentWorkbook(){[Name="Tabella1"]}[Content],
    Tempi = List.Skip(Origine[Colonna1], 1),
    Personalizzato1 = Table.FromColumns({Origine[Colonna1], Tempi}),
    #"Righe alternate rimosse" = Table.AlternateRows(Personalizzato1,1,1,1)
in
    #"Righe alternate rimosse"
Ciao Enrico Galli ,
Come puoi vedere dal file allegato ho creato una nuova query per esercitarmi seguendo anche le tue indicazioni/logiche.
Concettualmente credo (spero) di aver capito il ragionamento che hai seguito:
1) List.Skip per creare la colonna "Tempi", ma priva della prima riga;
2) Table.FromColumns per affiancare poi le due colonne.

Ispirandomi alla tua logica volevo aggiungere un passaggio (con aggiungi colonna) per creare la colonna "Tempi" (priva della prima riga) con "List.Skip", ma va in errore.
Perché?
Ciao e grazie
g

Filtrare righe alternate di una tabella

Inviato: mar 13 lug 2021, 12:39
da Enrico Galli
Ciao, non puoi fare in quel modo perché lui cercherà in ogni cella della nuova colonna (each) di inserire una lista. Oltre a questo, il riferimento a [Colonna1] all'interno di each fa sì che lui cerchi il valore nella riga corrente di quella colonna, e non la colonna intera. Pertanto, ti genera un errore in quanto List.Skip si aspetta come primo argomento una lista, ma riceve un testo (il valore della colonna in quella riga). Uscendo invece dal contesto di riga come ho fatto io (creando un passaggio scollegato dal precedente), la lista viene generata e poi puoi ricomporre la tabella con Table.FromColumns. Tra l'altro, con molte righe è anche un sistema molto più veloce rispetto al riferimento alla riga precedente/successiva (e ancora di più se si usa List.Buffer per salvarla in memoria)

Filtrare righe alternate di una tabella

Inviato: mar 13 lug 2021, 12:41
da Gennaro_64
Ho capito
Grazie