Я использую VBA для обработки множества данных. Поскольку данные не чисты, иногда мне нужно вручную выбрать пользователя, который является правильным. Предпочитаю избегать формы пользователя, если можно. (хотя это будет сделано, если это лучший способ). Вот то, что я до сих пор:Есть ли лучший способ дать выбор строки пользователю?
Sub string_choice()
Dim msgValue
msgValue = MsgBox("Hello, which is correct? Choose:" _
& vbCr & "Yes: if you want option A" _
& vbCr & "No: if you want option B" _
, vbYesNoCancel + vbQuestion)
If msgValue = vbYes Then
MsgBox "You chose option A"
ElseIf msgValue = vbNo Then
MsgBox "You chose option B"
ElseIf msgValue = vbCancel Then
MsgBox "script closing, no choice made."
End If
End Sub
Как я могу лучше всего захватить парочку строк и попросить пользователя выбрать один?
'inputbox $ (" Введите опцию A или B "...)'? - UserForm с ComboBox будет наиболее интуитивно понятным. –
'MsgBox' - хорошее решение, если вы уверены, что у вас не будет более 3 вариантов; 'Inputbox' может быть интересным, если у вас их больше, но вам нужно проверить вывод для проверки (осторожно). Следующее лучшее решение - это UserForm с динамически генерируемыми полями Option, которые довольно тяжелы! – R3uK