Merge con criteri diversi L’argomento è risolto
Moderatore: Utilizzo_prof_Excel
-
- Messaggi: 79 | Topic creati
- Iscritto il: gio 30 lug 2020, 13:18
- Ringraziato: 10 volte
- Contatta:
Merge con criteri diversi
Ciao,
ho due tabelle da mettere in merge: 'Fatti' e 'Condizioni'. Devo riportare con un merge sulla tabella 'Fatti' il valore del campo 'Valore' della tabella 'Condizioni'.
Per alcuni prodotti la condizione di merge è vera se rispetta 2 criteri (Forn+Cat Sconto), per altri solo Forn in quanto lo sconto è valido per tutte le categorie prodotto.
Si può fare?
In allegato un semplice file di esempio con il risultato aspettato ed il merge che non funziona correttamente.
Grazie mille in anticipo
ho due tabelle da mettere in merge: 'Fatti' e 'Condizioni'. Devo riportare con un merge sulla tabella 'Fatti' il valore del campo 'Valore' della tabella 'Condizioni'.
Per alcuni prodotti la condizione di merge è vera se rispetta 2 criteri (Forn+Cat Sconto), per altri solo Forn in quanto lo sconto è valido per tutte le categorie prodotto.
Si può fare?
In allegato un semplice file di esempio con il risultato aspettato ed il merge che non funziona correttamente.
Grazie mille in anticipo
- Allegati
-
- Merge Multiplo.xlsx
- (22.32 KiB) Scaricato 73 volte
-
- Messaggi: 890 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:03
- Luogo: San Giovanni in Persiceto (BO)
- Ringraziato: 326 volte
- Contatta:
Merge con criteri diversi
Ciao, la mia soluzione sarebbe questa :
Praticamente, anziché utilizzare il merge classico, ho creato una colonna personalizzata in cui sono andato a inserire la colonna "Sconto" della tabella Condizioni, filtrata per uguaglianza del Fornitore e (uguaglianza della Categoria o Categoria = "Tutto"). Poi ho espanso la tabella
Codice: Seleziona tutto
let
Origine = Excel.CurrentWorkbook(){[Name="Fatti"]}[Content],
#"Modificato tipo" = Table.TransformColumnTypes(Origine,{{"Cod. Art.", Int64.Type}, {"Categoria", type text}, {"Fornitore", type text}, {"Acquisto", Int64.Type}}),
#"Aggiunta colonna personalizzata" = Table.AddColumn(#"Modificato tipo", "Join", (x) => Table.SelectColumns(Table.SelectRows(Condizioni, each [Forn] = x[Fornitore] and ([Cat Sconto] = x[Categoria] or [Cat Sconto] = "Tutto")), "Sconto")),
#"Tabella Join espansa" = Table.ExpandTableColumn(#"Aggiunta colonna personalizzata", "Join", {"Sconto"}, {"Sconto"})
in
#"Tabella Join espansa"
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
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 - Messaggi: 79 | Topic creati
- Iscritto il: gio 30 lug 2020, 13:18
- Ringraziato: 10 volte
- Contatta:
Merge con criteri diversi
Funziona meravigliosamente. Qui però siamo nel linguaggio M avanzato. Adesso il compito per me arduo è metterlo in produzione.
Grazie Enrico
Grazie Enrico
-
Autore del topic - Messaggi: 79 | Topic creati
- Iscritto il: gio 30 lug 2020, 13:18
- Ringraziato: 10 volte
- Contatta:
Merge con criteri diversi
Ciao Enrico, la messa in produzione mi sta creando problemi che non so gestire. La nuova colonna Join restituisce il valore 'Fuction' anzichè 'Table'.
Secondo te da cosa può dipendere? Tieni conto che la mia tabella 'Fatti' ha come origine un database sql server. Può influenzare?
Grazie
Secondo te da cosa può dipendere? Tieni conto che la mia tabella 'Fatti' ha come origine un database sql server. Può influenzare?
Grazie
-
- Messaggi: 2480 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 695 volte
- Contatta:
Merge con criteri diversi
AntonioP,
L'origine non influenza il calcolo.
Avrai commesso qualche errore di sintassi nell'implementare il codice M scritto da Enrico.
Andrea
L'origine non influenza il calcolo.
Avrai commesso qualche errore di sintassi nell'implementare il codice M scritto da Enrico.
Andrea
-
Autore del topic - Messaggi: 79 | Topic creati
- Iscritto il: gio 30 lug 2020, 13:18
- Ringraziato: 10 volte
- Contatta:
Merge con criteri diversi
Ciao @Andrea90, controllato e ricontrollato, ma non ne esco.
Ho rinominato le colonne con delle lettere per semplificare il codice M.
In allegato degli screenshot.
Spero riusciate ad aiutarmi.
Grazie
Ho rinominato le colonne con delle lettere per semplificare il codice M.
In allegato degli screenshot.
Spero riusciate ad aiutarmi.
Grazie
- Allegati
-
- Editor errore.docx
- Screenshot
- (150.57 KiB) Scaricato 63 volte
-
Autore del topic - Messaggi: 79 | Topic creati
- Iscritto il: gio 30 lug 2020, 13:18
- Ringraziato: 10 volte
- Contatta:
-
- Messaggi: 2480 | Topic creati
- Iscritto il: dom 28 giu 2020, 19:41
- Luogo: Bologna
- Ringraziato: 695 volte
- Contatta: