255 Символьных пределов на VLOOKUP

Используя Excel 2003, формулу:

=VLOOKUP(D1 ,A1:B135, 2)

сбои, если длина D1 превышает 255 символов (т.е. список имеет некоторый текст дольше затем 255 символов, D1, имеют то же текстовое значение, и VLOOKUP возвращает #VALUE!).

СООТВЕТСТВИЕ, кажется, страдает от того же символьного предела.

Я не могу найти официальное подтверждение этих пределов, например, здесь:

http://office.microsoft.com/en-us/excel-help/vlookup-HP005209335.aspx

или здесь:

http://office.microsoft.com/en-us/excel-help/excel-specifications-and-limits-HP005199291.aspx?CTT=3

Я знаю, что Excel имеет 255 пределов на длину текста, используемого в формулах, но это предлагает родственный, должен работать (это не делает в этом случае, и я не использую строки в формуле, но ссылаюсь на другую ячейку).

Кто-то может подтвердить, что они ограничивают, существуют (всегда возможно, что я делаю что-то еще неправильно)?

Что еще более важно, кто-либо знает о пути вокруг них?

Спасибо

3
задан 18.02.2011, 13:19

2 ответа

Можно всегда кодировать собственный VLOOKUP..., но, как альтернатива, можно вычислить хеш из справочного значения и использовать его в качестве нового справочного значения.

Коллизии могут произойти, но использование несколько достойного хеш-алгоритма, как MD5, это не должна быть проблема.

Для создания хеш-функции можно использовать идеи от https://stackoverflow.com/questions/125785/password-hash-function-for-excel-vba.

3
ответ дан 07.12.2019, 23:43

Запишите свой собственный поиск в VBA

Вот запуск:

Function MyVL(v As Range, r As Range, os As Long) As Variant
    Dim cl As Range

    For Each cl In r.Columns(1).Cells
        If v = cl Then
            MyVL = cl.Offset(0, os - 1)
            Exit Function
        End If
    Next
End Function
2
ответ дан 07.12.2019, 23:43

Теги

Похожие вопросы