Ausdrucksspalte mit Liste, Vergleich mit gegebener Liste, um sie durch den gewünschten Wert zu ersetzenHallo,
Gibt es eine Methode zum Hinzufügen einer neuen Formel zur Spalte für das Problem unten?
Ich habe eine Spalte, die einen Listenwert enthält, und ich möchte sie mit einer bestimmten Liste vergleichen. Wenn ein Element aus der Liste in der Spalte mit einer bestimmten Liste übereinstimmt, ersetzen Sie dieses einzelne Element durch „1“. Nachfolgend finden Sie Beispiele. Die angegebene Liste ist {"aa", "app", "b", "pp", "zzzz"}

Automatisierung und SkripterstellungBetreff: Ausdrucksspalte mit Liste mit angegebener Liste vergleichen, um sie durch den gewünschten Wert zu ersetzenUnten finden Sie eine Idee, die Sie verwenden könnten
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(1),
Compress File When Saved(1),
New Column("Column 1", Expression, "None", Set Values({{"aa", "bb", "dd"}, {"bb", "2", "cc"}}))
);
mylist = {"aa", "bb", "cc"};
dt << New Column("res", Expression, "None");
For Each Row(dt,
rowresult = Transform Each({myitem, idx}, mylist,
If(:Column 1[Row()][idx] == myitem,
"1"
,
myitem
)
);
:res = rowresult;
);Betreff: Ausdrucksspalte mit Liste mit angegebener Liste vergleichen, um sie durch den gewünschten Wert zu ersetzenIch habe immer noch ein Problem. Der Vorschlag ordnet nur das erste Element in „mylist“ dem ersten Element in „:Spalte 1“ zu, dann das zweite dem zweiten und dem dritten dem dritten. Auch wenn :column 1 mehr als 3 Elemente enthält, wird der Rest entfernt. Unten finden Sie das Ergebnis des Vorschlags

Wie Sie unten aktivieren, erfahren Sie hier.

Betreff: Ausdrucksspalte mit Liste, Vergleich mit gegebener Liste, um sie durch den gewünschten Wert zu ersetzenIn meinem Beispiel gab es einen Fehler und ich habe falsch verstanden, wonach Sie gesucht haben. Dies ist höchstwahrscheinlich näher an dem, wonach Sie suchen
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(1),
Compress File When Saved(1),
New Column("Column 1",
Expression,
"None",
Set Values({{"aa", "bb", "dd"}, {"bb", "2", "cc"}})
)
);
mylist = {"aa", "bb", "cc"};
dt << New Column("res", Expression, "None");
For Each Row(
dt,
rowresult = Transform Each({item}, :Column 1[Row()],
If(Contains(mylist, item),
"1"
,
item
)
);
:res = rowresult;
);
