Обнаружение определенного текста Unicode в ячейке Excel из массива возможностей - есть ли простой метод?

Я использую VBA для форматирования своих электронных таблиц. Единицы имеют свой собственный формат. Мне было интересно, как обнаружить символ ома. (Согласно карте персонажей = U+03A9)

Я знаю, что могу написать это как R или как «Ом», но я видел несколько блестящих трюков на этом сайте и задавался вопросом, существует ли действительно простой метод уровня- if left(string,1) = something here then ... что мог сделать это.

Дополнительная сложность заключается в том, что я использую массивы, состоящие из строк из одной строки и команду SPLIT, как здесь. LIST = " m mm mpm m/min s Pa kg N Nm mm/s Hz rpm GBP ul rad/s N/mm perc PC rev/s MPa psi N/mm2 mm2 "WrdArray() = Split(LIST, " ") Затем я просто сравниваю ячейку с каждым членом массива. Есть ли метод, который работает для этой ситуации?

Я думал объединить символы Юникода в эту строку, но тогда все это должно было бы быть строкой другого типа, не так ли?

Я знаком с VBA, но символы Unicode, когда IDE, похоже, не поддерживает их должным образом, представляют собой проблему.

Будем признательны за любую помощь, даже просто подсказку, как это сделать, и спасибо, что прочитали это.

Я только что попробовал предложение Айка ниже и получил это (выделено желтым), и это фантастика.

Правильный результат форматирования для символов Unicode

Ввод символов в список был в точности таким, как сказал Айк. Обратите внимание, здесь я также добавляю гибрид для блока microFarad.

LIST_TAG2 = " " & ChrW(8486) & " " & ChrW(937) & " " & ChrW(&HB5) & "F "

Как ни странно, оригинальная процедура обнаружения совпадений, кажется, все еще работает. Вот. ss — строковая переменная, представляющая собой текст ячейки.

WrdArray4() = Split(UCase(LIST_TAG2), " ")

       For jj = LBound(WrdArray4) To UBound(WrdArray4)
        If WrdArray4(jj) = UCase(Trim(ss)) Then
            CELL_TYPE = IS_TAG2
            B = True
            End If
        Next jj
Преобразование HTML-таблицы в профессиональный документ Excel
Преобразование HTML-таблицы в профессиональный документ Excel
Это самый простой способ создания Excel из HTML-таблицы.
Импорт excel в laravel в базу данных
Импорт excel в laravel в базу данных
Здравствуйте, дорогой читатель, в этой статье я расскажу практическим и быстрым способом, как импортировать файл Excel в вашу базу данных с помощью...
0
0
83
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Если вы хотите проверить определенное значение ячейки (например, выбранную ячейку) для символа Ω, используйте If AscW(selection) = 8486 ...

Что касается вашего списка: вы должны добавить символ Ω как LIST = ChrW(8486) & " m mm ", так как вы не можете ввести его в редакторе VBE.

Поскольку в OP упоминается U + 03A9 (что составляет десятичное число 937), я предполагаю, что это должно быть ChrW (937), что дает греческую заглавную омегу.

FunThomas 25.11.2022 16:13

Хм - если вы ищете «unicode ohm», вы получите код, который я использовал, но действительно в Excel оба результата выглядят очень похоже

Ike 25.11.2022 16:17

Я только что погуглил «Ом» и скопировал отображаемый символ из верхней части страницы в Excel - это был ChrW (937) - как раз собирался напечатать свой ответ, когда увидел ваш. Был удивлен, что вы нашли другого персонажа.

FunThomas 25.11.2022 16:59

Спасибо всем троим за исчерпывающий ответ. FunThomas хорошо заметил второй знак ома, и они кажутся идентичными, поэтому нужно искать оба. Также для дополнительной части ТМ за действительно ценный Unicode. Ответ Айка решил проблему простым способом. Еще раз спасибо всем вам.

REPuzzle 25.11.2022 20:19

Другие вопросы по теме