< návrat zpět

MS Excel


Téma: spojení vzorců v PQ rss

Zaslal/a 18.3.2024 14:15

Dobrý den, potřebuju poradit. Mám tabulku kde porovnávám sloupce v PQ. Potřebuji ale porovnat více sloupců najednou s výsledkem v jedné buňce. Jak se dají vzorce spojovat v jazyce M? Vím, že můžu vypsat samostatné vzorce a pak spojit, ale chtěla bych vědět jak se to dá v jazyce M udělat elegantněji?

Ve vzorci Excelu myslím toto:
=KDYŽ(A2<>B2;0;1)&KDYŽ(B2<>C2;0;1)&KDYŽ(C2<>D2;0;1)
Výsledek např.: 011

Potřebuji "&" nahradit v PQ, nebo se zapisuje jinak? Předem díky.

Zaslat odpověď >

#056344
elninoslov
Možností bude mnoho, napr.:
= Table.AddColumn(Predchádzajúci_krok, "Vlastné", each Number.ToText(Number.From([AAA]=[BBB])*100 + Number.From([BBB]=[CCC]) *10 + Number.From([CCC]=[DDD]), "000"))
= Table.AddColumn(Predchádzajúci_krok, "Vlastné", each (if [AAA]=[BBB] then "1" else "0") & (if [BBB]=[CCC] then "1" else "0") & (if [CCC]=[DDD] then "1" else "0"))citovat
#056351
avatar
Když dávám do pq něco podobného, používám obecnější přístup:

Sloupce = {"A", "B", "C", "D", "E", "F", "B"},
Porovnání = Table.AddColumn(
Zdroj,
Text.Combine(Sloupce, ";"), // Jména sloupců v názvu
each List.Accumulate(
List.Skip(Sloupce, 1), // Od druhého prvku
[x = Record.Field(_, Sloupce{0}), vys = ""],
(z, a) => [
x = Record.Field(_, a),
vys = z[vys] & (if z[x] = x then "1" else "0")
]
)[vys],
type text
)

V seznamu Sloupce jsou porovnávané sloupce v potřebném pořadí, mohou být uvedeny i opakovaně.citovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje