Salesforce’s multi-select picklist seems like a great fieldtype, but it has an incredible amount of limitations. I strongly recommend avoiding multi-select picklists in Salesforce. I’ve learned this and suffered a lot after incorrectly deciding to use them instead of using a bunch of checkboxes.
They have the great benefit that users can select multiple options, but that’s about the only option. They cannot be used as controlling fields for dependent picklist fields, and can only be used as a dependent field.
Dealing With Muli-Select Picklists in Formulas
In formulas, the muliselect has to use contain instead of includes or equal. They are only supported in certain functions and basically it feels almost like a hack to use them in the formula if even possible due to the character limits in formulas.
Automatically Truncated Without Notice
Multi-select picklists have a character limit of 40 characters for each value and are automatically truncated without notice. You would think there would be some sort of warning for adding values over 40 characters or that the limit would be the same as the picklist field (255 characters), but there isn’t.
Reporting on Muli-Select Picklists is Horrible
Reports cannot use the equals operator and must instead using contains or includes and you definitely won’t have happen executives if you are displaying a semicolon delimited list that has truncated values. For the most part, multiselect picklists can’t be grouped so that eliminates a lot of the dashboard graphs.
Multi-Select Picklists aren’t Supported in Most AppExchange Apps
Most of the AppExchange Apps don’t support them because they don’t work in a very standard way. In Pardot, for example, it’s pretty much impossible to use them.
Apex & Triggers
Apex and Triggers get complicated very quickly with the use of them because they are semicolon delimited strings, so you need to split on the semicolons and do any necessary manipulations. While this doesn’t sound too complicated, and it isn’t really, it gets to be a real pain if your company ends up really dependent on them for important processes.
Workflows can’t update multi-select picklist fields.
Data Merging / Dealing With Duplicates
It’s no secret that I’m passionate about having clean data, I’ve even blogged about dealing with duplicates. When merging data, unfortunately, the master values are only kept for multi-select picklists.
As you can see, there’s quite a few reasons to avoid muti-select picklist and to instead use checkboxes or individual picklists.