Хотите использовать HLOOKUP для перетаскивания всего столбца, как я могу это сделать?

См. Следующий снимок экрана:

Введите описание изображения здесь

  • Формула Excel для расчета продолжительности времени на основе строки текста, такой как 9:00 - 12:30
  • Вложенные Ifs для личного бухгалтерского листа
  • Импорт из CSV изменяет формат числа в научную нотацию (1,23E + 18)
  • Excel помогает блокировать формулы от настройки на вставке ячеек
  • Копирование / вставка данных из SQL Server в Excel разбивает текст на несколько столбцов?
  • Как получить несмежные коллекции ячеек из строк в Excel?
  • Это всего лишь пример, мой реальный рабочий лист более сложный и содержит сотни строк.

    Моя текущая формула =HLOOKUP(A7,A1:D4,2,0) , но эта формула не позволяет мне перетащить ее вниз по столбцу, чтобы я мог получить «2-янв-12» и «3-янв- 12 "для Тома тоже. Как я могу изменить формулу, чтобы сделать ее подходящей для перетаскивания?


    Обновление: я попробовал =HLOOKUP($A$7,$A$1:$D$4,2,0) , но после перетаскивания теперь я получаю 5 за «2-янв-12» и «3-янв-12» , Я хочу перетащить формулу так, чтобы «2-янв-12» показывал 6 и «3-янв-12» показывает 7.

  • Определить неделю в финансовом году в Excel
  • Извлеките все HTML-теги из файла excel
  • HYPERLINK не работает, когда ссылка на внешнюю книгу закрыта
  • 2 монитора 2 таблицы Excel?
  • Как заставить Excel (и другие продукты Microsoft Office) прекратить открытие файлов в одном приложении?
  • Формула разделения в excel
  • 4 Solutions collect form web for “Хотите использовать HLOOKUP для перетаскивания всего столбца, как я могу это сделать?”

    Вам также нужно обновить 2, чтобы вы могли использовать эту версию в B8, скопированной вниз

    =HLOOKUP(A$7,$A$1:$D$4,ROWS(B$8:B8)+1,0)

    Функция ROWS увеличивается при перетаскивании и меняет row_index_num в HLOOKUP на 3, 4 и т. Д.

    Примечание: вышесказанное не соответствует датам, оно просто получает значение из следующей строки независимо от даты, чтобы точно соответствовать датам использовать эту версию

    =INDEX(B$2:D$4,MATCH(A8,A$2:A$4,0),MATCH(A$7,B$1:D$1,0))

    Я не уверен на 100%, это то, что вы ищете, но чтобы отдельные столбцы или строки не менялись при перетаскивании, добавьте перед ними $ :

    • A1 всегда будет обновляться в зависимости от направления, в которое вы перетаскиваете ячейку.
    • $A1 будет обновлять строку только при перетаскивании вверх / вниз.
    • A$1 будет обновлять столбец только при перетаскивании влево / вправо.
    • $A$1 никогда не изменится независимо от того, как и где вы перетаскиваете ячейку.

    По обновленному вопросу:

    Я проверил следующую формулу для ячейки B8 :

     =HLOOKUP($A$7,$B$1:$D$4,MATCH($A8,$A$1:$A$4,0),0) 

    MATCH определит n-ю строку, определяемую датой в первом столбце, которая затем выберет правильную строку из первой таблицы, используя HLOOKUP .

    Вы на правильном пути с этим. Вот формула, которую я использовал:

    ГПР

     =HLOOKUP($B$1,$C$1:$E$4,ROW(),FALSE) 

    HLOOKUP просматривает ваши столбцы и возвращает первое значение $ B $ 1 (используя $, чтобы сохранить абсолютную ссылку). Диапазон поиска также использует абсолютные значения, поэтому он не «ползут» при перетаскивании и заполнении формулы. Функция ROW возвращает значения в той же строке без каких-либо дополнительных вычислений. Я также использовал проверку данных, чтобы заполнить значение поиска в $ B $ 1 с одним из ваших существующих значений поиска, что дает вам быстрый снимок для работы. Сохраняя «целевое» значение в одном и том же макете данных (строках и столбцах) в качестве исходных данных, оно упрощает управление (в отличие от вашего примера, где оно смещено на несколько строк). Хороший формат данных делает почти все проще в Excel.

    Вам нужно «исправить» ссылки для массива: =HLOOKUP(A7,$A$1:$D$4,2,0)

    Давайте будем гением компьютера.