Oct 03, 2022 04:18 PM
I am stumped. I am trying to combine data from two multiple select fields, into one. For the sake of confidentiality, I have created an example of what I am working with, using part of the Greek alphabet instead of the actual data:
The goal is to combine these two columns into a third that looks and behaves exactly the same as the first two, simply with the data from both combined, into one. As easy as this feels like it should be, every single option I’ve seen either turns the output into text strings (which renders it useless for our tracking purposes), or else it requires a great deal of manually typing or copy-pasting the individual options of the multiple select, into the formula, one by one. It should be noted that while I have only used four Greek letters here, the actual number of entries we are working with is well over 600, and with far longer names, so such a process would be a grueling time-consumer.
Surely there must be some way to automate this?
Also note that there are a couple rows in which both columns already share one of the Greek letters - assuming that there IS a way to automate this, is there also a way to account for/deal with potential duplicates?
Oct 03, 2022 07:14 PM
Welcome to Airtable Community!
The easiest way to do so is to create an automation the simply copy pastes the data from both fields into a new multi select field. The trigger would be when a record is updated and Watch those 2 fields only. This however wont solve your duplicate problem. Also, keep in mind that none of your options can contain commas as it would be considered as 2 values instead of one.
If you want to remove the duplicates then it becomes a litte more complicated, you need to create a Linked Record field and paste both multi select options fields into it (using the same concept automation) then create a Rollup field in the same table with the expression ArrayUnique(Value) , this will remove the duplicates. You then can you another automation to copy paste this new rollup field to another multi select field
Hope this helps
Oct 04, 2022 08:37 AM
Thank you for your reply. Perhaps I am misunderstanding, however, but it seems like you’re suggesting that I manually copy each cell over to create one, for each row. These columns currently have 3,069 rows, and that is only going to increase from here. Manually copying and pasting is the time-consuming nightmare that we are trying to avoid. Is there really no other way to quickly combine the two columns into one?
Or am I simply misunderstanding?
EDIT: After re-reading, I think I understand somewhat better what you’re saying, but I’m not understanding how to go about doing that, apologies - would you be willing/able to detail that a little further?
Oct 04, 2022 10:55 AM
I think @Mohamed_Swellam is suggesting that you make use of Airtable’s automation feature to have this process happen automatically.
Read about automation here: Automations Overview | Airtable Support
Oct 04, 2022 11:13 AM
That is definitely the goal - however, my teammate and I have spent the last week exhaustively looking through the documentation on automation, and other forums. Thus far, every single option we have found, converts the output into a text string, which as I said before, renders it useless to us.
I assure you, we have spent a great deal of time hunting for the specific steps or formula to make this work. We have not yet found it.
Oct 04, 2022 11:30 AM
My apologies then for restating the obvious.
I’m less familiar with Automation than I am with scripting and extensions. I know it is possible to do what you are trying to do in a script. And it is possible (in Pro or higher subscriptions) to trigger a script from an automation.
I can pull some sample code for how to do it in a script a bit later if that’s helpful to you!
Oct 04, 2022 11:41 AM
That would be greatly welcome and appreciated, if you do! Thank you in advance!
Oct 04, 2022 12:01 PM
For what it’s worth, whether it is accomplished through a script, an automation, some other shortcut, or a genuine miracle, ANY solution towards the end goal will be warmly welcomed!
Oct 04, 2022 12:49 PM
Seems like the automation does work…
Create a new field of type Multiple Select. I’ll call it “Sum of Multis”
Trigger: When record updated
Action: Update record
So now, whenever you update either Field1 or Field2, after a moment the automation will run and update the 'Sum of Multis" column to contain all the values.
One bug I haven’t had time to iron out is that when Field1 or Field2 are blank, you get a blank item selected in the “Sum of Multis” column. This can be avoided using conditional actions:
Oct 04, 2022 12:52 PM
I should note that in my very brief testing, it seems like Airtable does automatically deduplicate the values:
Oct 12, 2022 02:14 PM
This popped back into my mind today and I was curious @Lif_Alcon if the automation example I showed you ended up being helpful?
Dec 19, 2022 07:31 PM
@Nathaniel_Grano Hi, thanks for your solution. I tested on my base and it works fine...for the first time. However, as I updated the trigger volume by adding new choices/option to that multiselect field. All the options in the combined field, including the newly added one got consolidated into a lengthy option.
Added (Pineapple) to the trigger field
After automation: (Orange,Apple,Pineapple)
Multiselect field has always been something interesting as I get to know Airtable, however it does not work properly sometimes. If you can help me with this, would be really great.
Dec 20, 2022 08:57 AM
Hi @ThanhLong ,
I'm having trouble reproducing your issue. Can you give me an example in more detail? Here's what I tried:
1) Set up the example from before with 2 "trigger" columns named "Field1" and "Field2". Each one contained the options: Apple, Banana, Carrot, Grape
2) Set up the automation
3) Create an item with "Apple" in Field 1 and "Banana" and "Grape" in Field 2
4) Automation produces correct value: "Apple", "Banana", "Grape"
5) Add "Pineapple" to Field1 choices and edit the record to include "Pineapple" in Field1.
6) Automation produces correct value of "Apple","Banana","Grape","Pineapple"
What were the steps you followed that led to the wrong outcome?