Thanks for trying to help.
Unfortunately, it doesnt work if i got more lists. I think the function I want should base on list comparation first.
For example, the value under index1 in list1 compare to the value under index1 in list2 and the value under index1 in list3. If all of them have a value of “null” under index1 in list1,2 and3, then take the value “null” to the index1 in new list. If the value is “A” under index2 in list1, and the values are “null” under index2 in list2 and list3, then it will take the value “A” to the index2 in the new list. So, under the example above, the new list should have a value “null” under index1 and a value “A” under index2.
Only by doing so, I can keep the same number of index in the new list compare to list1, 2,and 3.
If I use " List.Clean" or “List.UniqueItems” these kind of scrpits, the number of index in the new list will not be the same with list1,2,3 and more.
In order to make it clearer. I quickly create a dyn file and uploaded here. It will be the same story with the screen capture, which is left side lists to form a new list like the right one. example.dyn (32.6 KB)