How to make formula column display two values based on ID number column?

Hello all!

I’m using a ID number column that displays anywhere from 1-4 ID numbers. I would like to create a formula column that ties each ID number to a name. I have figured out how to display a singular name if the ID number column only contains 1 ID number.

For example:
The ID number column is displaying 102224233, so the formula column will display Lex Flippen.

IF({Deal Owner ID}=“102224233”,“Lex Flippen”)

However, my issue is that I cannot figure out how to have a formula column display more than 1 name if the ID number column has multiple IDs in it. Does anyone know how to obtain this?

For example:
The ID number column is displaying two values: 102224233;206136841, so I’d like the formula column to display two names.

Any help would be much appreciated!

Hello @lexflippen !

To my knowledge, you would have to alter the formula to take into account all the ids and the combinations and order they can appear in, starting from the biggest combinations and moving towards the smaller ones.

This in not optimal in any case, and feasible to do only if you have a small number of ids.

Would be glad to hear if anyone else has any ideas!

Best,
Giannis, Implementation Consultant at thespelas.com

Unfortunately, I do have a large pool of IDs since the number ID column is utilizing a field from our HubSpot CRM integration that pulls in user IDs. I appreciate the input, Giannis!

This is definitely helpful if I have smaller data sets in the future.

I’m surprised this isn’t a more common issue!

Hi Lex,

I think the issue here is partly that you might be expecting monday.com to work like Excel. monday.com is its own ecosystem and has its own ways of managing people and connections and assignments.

It isn’t built as a sort of layer in a code/id based system. You’re looking for an array based LOOKUP function, when monday.com is coming from a perspective of trying to avoid these technical configurations and be super user-friendly.

I’m not saying it’s your fault, however altering your perspective on this can help to better understand monday.com and reap its benefits instead of butting up against its limitations.


Broad comment aside, I do have some practical help for you:

  1. You can create a pretty long formula and there’s not necessarily any reason not to do so. Keep it in a text editor and format it in a way that it easy to maintain. Let’s look at how you could structure that effectively. The easiest way I can see is to use a nested SUBSTITUTE() function. You need to add a new “SUBSTITUTE(” line for each record you add and remember exclude the comma from the last line. However, this seems to be a viable way to manage a reasonably large database of names. You could even get ChatGPT to populate and verify this for you relatively easily.
SUBSTITUTE(
SUBSTITUTE(
SUBSTITUTE(
    {IDs},
    "102224233","Kevin"),
    "097392910","John"),
    "206136841","Paul")
  1. Do you keep a monday.com database of these people? I’d probably recommend it. A Make integration (for example) could help you to keep items in your database connected to people items based on an ID reference. This would essentially do exactly what you describe and it would be easier to do things like create charts and dashboards. Make is harder to learn though—you could try with Zapier although it’s probably complex enough that I’d recommend Make, which is cheaper anyway. If you’re struggling with Make, there are many consultants and developers on the forum who could help (myself included!).
  2. You could also use Make/Zapier or whatever integration you’re using to pull in the names as well as an option. That would save you this extra step and keep the data synced potentially.
  3. Consider a totally radical approach. Is it possible to structure this process in a different way? What is the purpose of these names in the board?

Hope that helps!


Update:

I went ahead and tested the formula with 30 names. It works great! (Although for some reason ChatGPT really likes the name Charlie! :man_shrugging: )