У меня есть следующее в таблице Excel:

A1: Labeling
B1: [L-1.1.2-A] - Not for use in patient environment according to IEC 60601-1 (3rd edition) (in e-manual or printed manual)[L-1.1.2-B] - Hardware is labeled with instructions and warnings to remove power before opening the case in the OEM manuals. (in e-manual or printed manual)
F1: L-1.1.2-A
G1: =INDEX(A:A;MATCH("*"&F1&"*";B:B;0))

A2: Design
B2: [D-1.1.2-A] - Equipment not used in patient environment according to IEC 60601-1 (3rd edition)[D-1.1.2-B] - IEC 60601-1 or IEC60950
F2: D-1.1.2-A
G2: =INDEX(A:A;MATCH("*"&F2&"*";B:B;0))

Столбцы A, B и F отформатированы как текст.

Моя проблема в том, что G1 возвращает # N/A, когда ясно, что строка найдена в B1, и она должна возвращать "Маркировка". С другой стороны, G2 правильно возвращает "Дизайн". Если я делаю обычный поиск строки в F1, она находится в ячейке B1. Есть идеи, что может пойти не так?

Спасибо!

2 ответа2

1

Как вы определили, для MATCH существует ограничение в 255 символов, что разочаровывает.

Глядя на ваши данные, кажется, что вы вполне можете предположить, что данные всегда будут в первых 255 символах? Если это так, вы можете использовать следующую формулу массива:

=INDEX(A:A,MATCH("*"&F1&"*",LEFT(B:B,255),0))

Это обрежет первые 255 символов слева. Помните, что в качестве формулы массива вы должны использовать CTRL+SHIFT+ENTER, а не просто ENTER (при правильном вводе должна отображаться формула с фигурными скобками вокруг нее).

0

Похоже, проблема в том, что MATCH работает только с ячейками, которые имеют максимум 255 символов. Как только длина превышает это, возвращается ошибка. Чтобы обойти это, я использовал вместо этого следующую формулу:

=INDEX(A:A;MATCH("*"&F1&"*";MID(B:B;SEARCH(F1;B:B);20);0))

Поскольку это формула массива, ее необходимо подтвердить с помощью сочетания клавиш CTRL+SHIFT+ENTER. Это также работает, если искомая строка находится за пределами 255-го символа.

Большое спасибо @jonno, который указал мне правильное направление!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .