Формула проверки данных Excel

Формула проверки данных Excel

У меня есть таблица со столбцом ввода, и я настроил две таблицы с допустимыми входными значениями. Правильная таблица зависит от значения в ячейке в конце каждой строки. Чтобы определить, какая таблица разрешена, я настроил формулу проверки данных (например, =if cellatendof row>0, table1, table2). Я попытался перетащить проверку данных вниз, но она не использовала относительную ссылку на ячейку, которую должна была проверить. Поэтому я вручную перешел к каждой ячейке в столбце и обновил формулу проверки данных, чтобы проверить ячейку для этой конкретной строки (например, ... =if cellatendofrow1>0... then next =if cellatendofrow2>0).

Это работает, но это не позволит никому добавлять или удалять строку — или даже сортировать данные — без отключения формулы проверки данных. Вместо указания на новое местоположение ячейки, она указывает на исходную строку, жестко закодированную. Таким образом, если строка добавляется, теперь строка 1 перемещается в строку 2, но формула все еще смотрит на , cellatendofrow1потому что она была жестко закодирована таким образом, как и все остальные строки, и результаты, скорее всего, будут недействительными.

Есть ли способ сделать ссылку относительной, а не статической, и перемещать ее вместе с остальной частью строки?

Извините, я не знаю VB, но могу попробовать, если это поможет!

решение1

Если флаг таблицы установлен ColumnC(всегда!), то, по-видимому, работает следующая формула (с использованием именованных диапазонов):

SU479043

Связанный контент