Problema con List.First

Non è propriamente un programma di BI, ma nelle sue versioni più recenti anche Excel può fare grandi cose!

Moderatore: Utilizzo_prof_Excel

Rispondi

Powerscarso
Messaggi: 4 | Topic creati
Iscritto il: ven 26 apr 2024, 12:10

Problema con List.First

Messaggio da Powerscarso »

Ciao a tutti,

sto avendo un problema con una formula in power query che in Excel facevo con indice/confronta.
Nel file Cartel1 ho recuperato i dati dei file

TOPOLINO
PLUTO
PIPPO
PAPERINO
MINNI
BASETTONI

che hanno la medesima struttura.
Li ho trasformati per ottenere il miglior prezzo di ciascun codice.
Nella stessa tabella vorrei però ottenere anche una colonna che mi restituisca il nome del fornitore a cui appartiene. Cercando nel forum e in rete ho individuato il comando List.First.

all'ultima formula

= Table.Group(#"Rimosse colonne3", {"CODICE"}, {{"Miglior Prezzo", each List.Min([PREZZO]), type number}})

vorrei quindi aggiungere

{{"Nome fornitore", each List.First([Fornitore]), type text}})

ma ottengo questo errore:

Expression.Error: Non è possibile convertire un valore di tipo List nel tipo Number.
Dettagli:
Value=
  • Type=[Type]

    sono nella strada giusta o sono completamente fuori ?
    in allegato la cartella per una miglior comprensione

    https://we.tl/t-CTO4REmxxu


Avatar utente

Andrea90
Messaggi: 2271 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Bologna
Ringraziato: 673 volte
Contatta:

Problema con List.First

Messaggio da Andrea90 »

@Powerscarso,

E cosa vuoi ottenere quando per lo stesso prodotto hai 2 prezzi uguali a quello Minimo, ma con due fornitori diversi?

Andrea
Se hai gradito l'aiuto che hai ricevuto considera di contribuire alle spese per il mantenimento del forum facendo una libera DONAZIONE --> Link

Ricordarsi di segnare come "RISOLTE" le discussioni per le quali si è ricevuto un feedback positivo. Per vedere come fare --> Link

Autore del topic
Powerscarso
Messaggi: 4 | Topic creati
Iscritto il: ven 26 apr 2024, 12:10

Problema con List.First

Messaggio da Powerscarso »

In questo caso non so come può gestire la cosa Power Query, io vorrei avere entrambi i nomi, ripeto se Power Query contempla questa possibilità, altrimenti il nome del primo valore che trova.
Avatar utente

Andrea90
Messaggi: 2271 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Bologna
Ringraziato: 673 volte
Contatta:

Problema con List.First

Messaggio da Andrea90 »

@Powerscarso,

Una cosa simile ?

Codice: Seleziona tutto

let
    Origine = Folder.Files("C:\Users\annas\Desktop\FRANKESTEIN"),
    #"Rimosse colonne" = Table.RemoveColumns(Origine,{"Extension", "Date accessed", "Date modified", "Date created", "Attributes", "Folder Path"}),
    #"Aggiunta colonna personalizzata" = Table.AddColumn(#"Rimosse colonne", "Personalizzato", each Excel.Workbook([Content])),
    #"Rimosse colonne1" = Table.RemoveColumns(#"Aggiunta colonna personalizzata",{"Content"}),
    #"Tabella Personalizzato espansa" = Table.ExpandTableColumn(#"Rimosse colonne1", "Personalizzato", {"Name", "Data", "Item", "Kind", "Hidden"}, {"Personalizzato.Name", "Personalizzato.Data", "Personalizzato.Item", "Personalizzato.Kind", "Personalizzato.Hidden"}),
    #"Filtrate righe" = Table.SelectRows(#"Tabella Personalizzato espansa", each ([Personalizzato.Kind] = "Sheet")),
    #"Rimosse colonne2" = Table.RemoveColumns(#"Filtrate righe",{"Personalizzato.Item", "Personalizzato.Kind", "Personalizzato.Hidden"}),
    #"Rinominate colonne" = Table.RenameColumns(#"Rimosse colonne2",{{"Personalizzato.Data", "Data"}, {"Personalizzato.Name", "Fornitore"}}),
    #"Tabella Data espansa" = Table.ExpandTableColumn(#"Rinominate colonne", "Data", {"Column1", "Column2"}, {"Data.Column1", "Data.Column2"}),
    #"Rinominate colonne1" = Table.RenameColumns(#"Tabella Data espansa",{{"Data.Column2", "PREZZO"}, {"Data.Column1", "CODICE"}}),
    #"Rimosse colonne3" = Table.RemoveColumns(#"Rinominate colonne1",{"Name"}),
    #"Raggruppate righe" = Table.Group(#"Rimosse colonne3", {"CODICE"}, {{"Miglior Prezzo", each List.Min([PREZZO]), type number}}),
    SelfMerge = Table.NestedJoin(#"Raggruppate righe", {"CODICE", "Miglior Prezzo"}, #"Rimosse colonne3", {"CODICE", "PREZZO"}, "SelfeMerge", JoinKind.LeftOuter),
    Result = Table.ExpandTableColumn(SelfMerge, "SelfeMerge", {"Fornitore"}, {"Fornitore"})
in
    Result
Andrea
Se hai gradito l'aiuto che hai ricevuto considera di contribuire alle spese per il mantenimento del forum facendo una libera DONAZIONE --> Link

Ricordarsi di segnare come "RISOLTE" le discussioni per le quali si è ricevuto un feedback positivo. Per vedere come fare --> Link

Autore del topic
Powerscarso
Messaggi: 4 | Topic creati
Iscritto il: ven 26 apr 2024, 12:10

Problema con List.First

Messaggio da Powerscarso »

Esattamente al 99,9%

c'è solo una cosa che non comprendo: perchè nella colonna fornitore trovo anche FRANKESTEIN. Non è un nome di un fornitore. Dovrei trovare solo pippo topolino minni pluto basettoni paperino.

Se ritieni il titolo della discussione non sia corretto, dimmelo pure che lo cambio.
Avatar utente

Andrea90
Messaggi: 2271 | Topic creati
Iscritto il: dom 28 giu 2020, 19:41
Luogo: Bologna
Ringraziato: 673 volte
Contatta:

Problema con List.First

Messaggio da Andrea90 »

Powerscarso ha scritto: ven 26 apr 2024, 15:50 c'è solo una cosa che non comprendo: perchè nella colonna fornitore trovo anche FRANKESTEIN
Io non la trovo guardando ai file che hai girato ed applicando il codice che ti ho girato.

Andrea
Se hai gradito l'aiuto che hai ricevuto considera di contribuire alle spese per il mantenimento del forum facendo una libera DONAZIONE --> Link

Ricordarsi di segnare come "RISOLTE" le discussioni per le quali si è ricevuto un feedback positivo. Per vedere come fare --> Link
Rispondi