Сохраняйте формулы, ссылающиеся на исходное имя столбца из таблицы после добавления столбца в таблицу в Excel

#excel #excel-tables

Вопрос:

В excel есть таблица с именем «Моя таблица» с двумя столбцами:

Имя Дата
Марк 2020.01.01
Джейн 2021.02.15

У меня есть формула для нахождения максимального значения столбца «ДАТА» «=MAX(MyTable[Дата])», которая возвращает «2021.02.15».

Мне нужно обновить «MyTable» новыми данными, но в нем есть дополнительные столбцы, и столбцы расположены не в том же порядке:

Имя Долларов Дата
Марк 500 2020.01.01
Джейн 250 2021.02.15

Если я вставлю новые данные с дополнительным столбцом в «MyTable», моя формула максимальной даты автоматически обновится до «=MAX(MyTable[Доллары])», которая теперь возвращает «500», а не «2021.02.15».

Есть ли способ заменить данные в таблице данными, содержащими дополнительные столбцы и столбцы в другом порядке, без того, чтобы каждая формула в книге сдвигала ссылку на столбец в неправильный столбец? (в реальной проблеме, которую я пытаюсь решить, исходные данные взяты с правительственного веб-сайта, поэтому я не контролирую форматирование источника, которое часто меняется. И есть 275 столбцов, поэтому невозможно вручную переставлять таблицу каждый раз, когда происходит изменение)

Комментарии:

1. Я бы использовал функцию match (), чтобы найти оттуда заголовок каждого столбца и индекс ().

2. Сработает ли это? =MAX(MyTable[[Date]:[Date]]) ссылка на диапазоны from:to делает его заблокированным при перетаскивании формулы в другой столбец. Однако я не могу воспроизвести вашу ошибку.

Ответ №1:

Я нашел кое-что, что работает:

 =MAX(INDIRECT("MyTable[Date]"))  

Использование INDIRECT позволяет мне жестко закодировать ссылку в виде текстового значения, чтобы она не обновлялась динамически при изменении порядка столбцов в таблице.