ChoiceKeys
The one place the export side and the import side build the name a custom dropdown is written under on a Choices sheet. CustomChoiceName builds the key from a dropdown name, IsCustomChoice says whether a key belongs to a custom dropdown, and ListNameFromChoice reads the dropdown name back out of a key. Both ends call these, so the two ends of a round trip agree.
THE NAME THE KEY IS BUILT FROM
The dropdown name held in the DropdownLists registry, exactly as the user
typed it. Nothing is trimmed, nothing is cleaned and no counter is added.
DropdownLists.AllDropdowns answers that list and DropdownLists.Update
takes the same name, so a key built this way survives the trip in both
directions.
Version: 1.0 (2026-08-01)
Factory
Create #
create
Create a key builder
Signature:
Public Function Create() As ChoiceKeys
The class holds no state. It is a class because both LLExporter and LLImporter need the same answer and a class is how this project shares behaviour.
Returns: ChoiceKeys. A ready instance.
Keys
CustomChoiceName #
custom-choice-name
The Choices sheet key of a custom dropdown
Signature:
Public Function CustomChoiceName(ByVal listName As String) As String
An empty dropdown name answers an empty key. LLChoices.Categories reads an
empty criteria as "blank cells" rather than as "nothing", so handing it a bare
prefix would answer rows that belong to no dropdown.
Parameters:
listName: String. The dropdown name held in the DropdownLists registry.
Returns: String. The key the choice is stored under, empty when the name is empty.
IsCustomChoice #
is-custom-choice
Whether a Choices sheet key names a custom dropdown
Signature:
Public Function IsCustomChoice(ByVal choiceName As String) As Boolean
Parameters:
choiceName: String. A key read off a Choices sheet.
Returns: Boolean. True when the key carries the custom dropdown prefix.
ListNameFromChoice #
list-name-from-choice
The dropdown name a Choices sheet key was built from
Signature:
Public Function ListNameFromChoice(ByVal choiceName As String) As String
The inverse of CustomChoiceName. A key that carries no custom prefix answers an empty string, so a reader walking a whole Choices sheet can tell the custom dropdowns apart from the choices the setup file authored.
Parameters:
choiceName: String. A key read off a Choices sheet.
Returns: String. The dropdown name, empty when the key is not a custom one.
Used in (6 file(s))
- LLExporter.cls
- LLImporter.cls
- Linelist.cls
- TestChoiceKeys.bas
- TestLLExporter.bas
- TestLLImporter.bas