FIDO valido L’argomento è risolto

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

Moderatore: Utilizzo_prof_Excel

Rispondi

AntonioP
Messaggi: 79 | Topic creati
Iscritto il: gio 30 lug 2020, 13:18
Ringraziato: 10 volte
Contatta:

FIDO valido

Messaggio da AntonioP »

Ciao, scusate il titolo... totalmente inappropriato.

Vi allego un file.
Obiettivo: dato un elenco di fatture devo creare una nuova colonna che riporti il fido valido in quel determinato periodo.

Nel file d'esempio (molto semplice) vi ho riportato il risultato aspettato.

Non saprei cosa usare (PowerQuery, PowerPivot o formule classiche. Spero non sia necessario una VBA.

Help me, please!!

Grazie mille
Allegati
FidoRecente.xlsx
(11.85 KiB) Scaricato 15 volte



Autore del topic
AntonioP
Messaggi: 79 | Topic creati
Iscritto il: gio 30 lug 2020, 13:18
Ringraziato: 10 volte
Contatta:

FIDO valido

Messaggio da AntonioP »

Chiedo scusa... il primo file d'esempio non riportava la colonna cliente. Non considerate il primo. Grazie

(Nota del moderatore: l'allegato sbagliato è stato eliminato)
Avatar utente

Enrico Galli
Messaggi: 890 | Topic creati
Iscritto il: dom 28 giu 2020, 19:03
Luogo: San Giovanni in Persiceto (BO)
Ringraziato: 325 volte
Contatta:

FIDO valido

Messaggio da Enrico Galli »

Ciao, con Power Query si potrebbe fare così: un merge tra le due tabelle, un filtro per escludere i cambi di fido di data successiva a quella della fattura, poi un raggruppamento per trovare il max delle date fido rimanenti e un ultimo filtro per eguagliare la data fido a questo max. Il tutto in allegato :wave:

Codice: Seleziona tutto

// Output
let
    Origine = Table.NestedJoin(fatture, {"Cliente"}, fidi, {"Cliente"}, "fidi", JoinKind.LeftOuter),
    #"Tabella fidi espansa" = Table.ExpandTableColumn(Origine, "fidi", {"Data", "Fido"}, {"fidi.Data", "fidi.Fido"}),
    #"Filtrate righe" = Table.SelectRows(#"Tabella fidi espansa", each ([fidi.Data] <= [data])),
    #"Raggruppate righe" = Table.Group(#"Filtrate righe", {"fattura"}, {{"ar", each _, type table [data=nullable date, fattura=nullable text, importo=nullable number, Cliente=nullable number, fidi.Data=nullable date, fidi.Fido=nullable number]}, {"datafidomax", each List.Max([fidi.Data]), type nullable date}}),
    #"Tabella ar espansa" = Table.ExpandTableColumn(#"Raggruppate righe", "ar", {"data", "importo", "Cliente", "fidi.Data", "fidi.Fido"}, {"data", "importo", "Cliente", "fidi.Data", "fidi.Fido"}),
    #"Filtrate righe1" = Table.SelectRows(#"Tabella ar espansa", each ([fidi.Data] = [datafidomax])),
    #"Rimosse colonne" = Table.RemoveColumns(#"Filtrate righe1",{"datafidomax"})
in
    #"Rimosse colonne"
Allegati
FidoRecente (PQ).xlsx
(20.97 KiB) Scaricato 19 volte
Enrico Galli
Link utili: I nostri tutorial | Come inserire: Immagini - Codice - Risolto
Se il forum ti è stato utile, considera di supportarlo con una libera donazione

Autore del topic
AntonioP
Messaggi: 79 | Topic creati
Iscritto il: gio 30 lug 2020, 13:18
Ringraziato: 10 volte
Contatta:

FIDO valido

Messaggio da AntonioP »

Enrico Galli ha scritto: mer 7 ott 2020, 23:25 Ciao, con Power Query si potrebbe fare così: un merge tra le due tabelle, un filtro per escludere i cambi di fido di data successiva a quella della fattura, poi un raggruppamento per trovare il max delle date fido rimanenti e un ultimo filtro per eguagliare la data fido a questo max. Il tutto in allegato :wave:
Carissimo Enrico Galli , nulla di nuovo sotto il profilo tecnico, ma assolutamente geniale nella combinazione delle varie funzioni di Power Query: semplice e funzionale.
Comincio ad essere in debito.... :clap: :clap: :clap:

Grazie mille
Avatar utente

Enrico Galli
Messaggi: 890 | Topic creati
Iscritto il: dom 28 giu 2020, 19:03
Luogo: San Giovanni in Persiceto (BO)
Ringraziato: 325 volte
Contatta:

FIDO valido

Messaggio da Enrico Galli »

Ti ringrazio AntonioP , ma non c'è proprio nulla di geniale... solo un po' di studio, un po' di esperienza e soprattutto tanta pratica :wave:
Enrico Galli
Link utili: I nostri tutorial | Come inserire: Immagini - Codice - Risolto
Se il forum ti è stato utile, considera di supportarlo con una libera donazione
Rispondi