← Все курсы · Курс Excel · Все руководства
Абсолютные и относительные ссылки в Excel: что блокирует знак доллара
В конце этой страницы вы можете скопировать формулу в любое место листа и заранее указать, какие ее части будут перемещены. Вы сможете закрепить ставку, чтобы ее мог использовать весь столбец, заполнить сетку из девяти ячеек с помощью одной формулы и распознать неправильный скопированный столбец, даже если его первая строка верна. Это занимает около двадцати минут. Каждое число ниже напечатано рядом с результатом его вычисления, поэтому вы можете проверить любое из них.
Вот ход. Если формула указывает на ячейку, которая не должна перемещаться при копировании формулы, поставьте знак доллара перед обеими половинами этого адреса: =D2*$G$1. Щелкните ссылку в строке формул и нажмите F4, чтобы вставить знаки. Вот и вся механика. Знак доллара означает «эта часть остается на месте».
Краткая версия: Excel не сохраняет введенный вами адрес. Он сохраняет расстояние от вашей формулы до ячейки, на которую она указывает. Знак доллара заменяет это расстояние фиксированным адресом.
Именно на этой идее основано все остальное на странице, чтобы получить представление о ней.
- Вилка: должна ли эта часть двигаться или оставаться?
- Что на самом деле хранит относительная ссылка
- Ставка в одной ячейке и 513,60 она стоит
- F4 и четыре состояния по порядку
- Смешанное: заблокируйте одну половину, освободите другую.
- Девять ответов из одной формулы
- Четыре вещи, которых не делает знак доллара
- Когда тебе вообще не нужен знак доллара
- Полное до и после
- Крайние случаи, которые незаметно нарушают скопированную формулу
- Почему это работает
- Использование этого в своей книге
- Все на одном экране
1. Вилка: эта часть должна двигаться или оставаться?
Перед объяснением один вопрос, на который стоит ответить по памяти. Подумайте о формуле, которую вы перетащили вниз по столбцу. Скажите, какие его части должны указывать на новое место в каждой строке, а какие части должны продолжать указывать на одно и то же место.
Этот вопрос и есть все решение, и он задается один раз для каждой ссылки в формуле. Есть два возможных ответа.
Ответ первый: он должен двигаться. Ссылка указывает на что-то, принадлежащее этой строке. Сумма этого заказа, дата этого заказа, имя в этой строке. Если это правда, вы хотите, чтобы ссылка смещалась при копировании формулы, и оставьте ее в покое. Это называется родственник ссылку, и это то, что вы получаете по умолчанию.
Ответ второй: должно остаться. Ссылки указывают на одну вещь, которая является общей для каждой строки. Ставка комиссии, процент налога, обменный курс, верхний левый угол справочной таблицы. Если это правда, вы хотите, чтобы каждая копия формулы запрашивала одну и ту же ячейку, и вы записываете это как $G$1. Это абсолютный ссылка.
Между ними решается не формула и не ячейка. Это предложение, которое вы бы сказали вслух по поводу этой ссылки. «Сумма в этой строке» перемещается. «Ставка» остается.
Это важно, потому что обратный ход обычно не приводит к появлению сообщения об ошибке. Он дает число, и следующий раздел посвящен тому, почему этому числу часто можно доверять.
2. Что на самом деле хранит относительная ссылка
Именно этот факт делает остальную часть страницы очевидной, а не запоминаемой. Тип =D2 в ячейку Е2. Excel не запоминает «D2». Он помнит «одну клетку слева от меня».
Скопируйте эту формулу в E5, и она по-прежнему будет означать одну ячейку слева от меня, которая теперь является D5. Формулу не знал, там написано D2. Он всегда знал только расстояние.
Скажите это вслух, потому что от этого предложения зависит вся тема: ссылка — это направление и расстояние, а не адрес.
Именно поэтому заполнение столбца вообще работает. Вы пишете одну формулу для строки 2 и копируете ее в строку 17, и каждая копия спокойно указывает на свою строку, потому что «одна ячейка слева от меня» верна для каждой строки.
Знак доллара отключает это поведение для половины адреса, перед которым он находится. $G означает столбец G, всегда, независимо от того, где заканчивается эта формула. $1 всегда означает строку 1. Поместите оба, и ссылка перестанет быть расстоянием и станет местом.
3. Ставка в одной ячейке и 513,60 она стоит
Вот и провал, работало впритык на реальных цифрах.
Таблица заказов находится в A1:D17. В столбце D указана сумма. В стороне находится небольшой блок предположений, куда осторожный человек помещает ставки так, чтобы они были видны и редактировались, а не были скрыты внутри формул.
| Ячейка | Этикетка | ценить |
|---|---|---|
| G1 | Ставка комиссии | 0.08 |
| G2 | Ставка налога | 0.20 |
| G3 | Коэффициент подъема | 1.05 |
Теперь комиссия за заказ идет в столбце E. В E2 вы пишете =D2*G1 и заливаем до Е17.
Первый ряд правый. E2 читается как 96,00 и 1200 × 0,08 = 96,00. Таким образом, формула получает одобрение, а заливке доверяют.
Вот что сделали следующие три строки.
| Ячейка | Что это стало | Арифметика | Результат |
|---|---|---|---|
| E2 | =D2*G1 | 1,200 × 0.08 | 96.00 |
| E3 | =D3*G2 | 950 × 0.20 | 190.00 |
| E4 | =D4*G3 | 1,480 × 1.05 | 1,554.00 |
| E5 | =D5*G4 | 720 × ничего | 0.00 |
| Е6:Е17 | =D6*G5 и вниз | каждая сумма × ничего | 0.00 |
Итоги по столбцу 1,840.00. Оно должно составить 1,326.40, потому что сумма шестнадцати сумм составляет 16 580 и 16 580 × 0,08 = 1 326,40. Лист закончился на 513,60, и 1840,00 минус 1326,40 = 513,60.
Прежде чем читать дальше, скажите, почему вторая строка оказалась верной. Изложить это своими словами стоит больше, чем само исправление.
Строка 2 верна, потому что строка 2 — это строка, для которой вы написали формулу. Расстояние от E2 до G1 на единицу вверх, на две вправо. В строке 3 то же расстояние находится на G2, что соответствует ставке налога. В строке 4 указан коэффициент подъема. Начиная с строки 5, она оказывается в пустом пространстве, а пустая ячейка рассматривается в арифметике как ноль.
Два из этих неправильных чисел, 190,00 и 1554,00, выглядят как деньги. Это та часть, которую стоит запомнить. Эта ошибка не дает о себе знать, и рецензент обычно проверяет только одну строку, которая является правильной.
Исправление — одно нажатие клавиши. В E2 нажмите на G1 и нажмите F4, что превратит его в $G$1, затем заполните снова.
=D2*$G$1
Теперь каждая строка запрашивает G1, общая сумма столбца составляет 1326,40, а изменение скорости в G1 обновляет сразу все шестнадцать строк. Эта вторая часть — настоящая награда. Ставка указана в ячейке, которую кто-то может ввести, что делает лист моделью, а не распечаткой.
4. F4 и четыре состояния по порядку
Вы почти никогда не печатаете знаки доллара. Вы помещаете курсор на ссылку и нажимаете F4, что приводит к циклическому перебору четырех возможных состояний. Майкрософт документирует порядок, и его стоит знать, потому что это означает, что одно дополнительное нажатие доставит вас туда, куда вы хотите, вместо того, чтобы начинать все сначала.
| Нажимать | Похоже на | Что заблокировано | Используйте его, когда |
|---|---|---|---|
| 1 | $A$1 | Столбец и строка | Одна ячейка должна спрашиваться у каждой копии. Ставки, пороги, диапазон поиска. |
| 2 | A$1 | Только строка | Заполнение поперек и вниз, где якорь живет в одном ряду. |
| 3 | $A1 | Только столбец | Заполнение поперек и вниз, где якорь живет в одном столбце. |
| 4 | A1 | Ничего | Вернёмся к простой относительной ссылке. |
На Мак тот же переключатель — Cmd+T, и F4 также работает, если для этого настроены ваши функциональные клавиши.
Одна вещь, которая смущает людей в Окна: F4 циклически перемещает ссылки только тогда, когда курсор находится на ссылке внутри формулы. В любом другом месте оно повторяет ваше последнее действие, что является действительно полезным ключом для другой работы.
5. Смешанный: зафиксируйте одну половину, освободите другую.
Прежде чем объяснение, предсказание. Если $G$1 скрепляет обе половинки и G1 булавок нет, скажи, что думаешь G$1 булавки.
Ряд. G$1 свободно перемещается вбок и застрял в ряду 1. Это зеркало, $G1, застрял в столбце G и может свободно перемещаться вверх и вниз.
Их называют смешанными ссылками, и они существуют для одной ситуации: формула копируется в двух направлениях одновременно. Когда вы только заполняете столбец, относительные и полностью абсолютные данные охватывают все, что вам нужно. В тот момент, когда вы также заполняете адрес, вы обычно хотите, чтобы одна половина адреса была закреплена, а другая половина свободна.
Эмпирическое правило короткое. Закрепите ту часть, которая не должна меняться в направлении копирования.
- Ваши якоря сидят в Строка вверху и копируете вниз: зафиксируйте строку,
G$1. - Ваши якоря сидят в Столбец вниз сбоку и копируете поперек: зафиксируйте столбец,
$D2. - Оба сразу — это сетка в следующем разделе, и для нее нужно по одному каждому.
6. Девять ответов из одной формулы
Финансовому отделу нужны комиссионные по трем возможным ставкам для первых трех заказов, чтобы они могли выбрать один. Это девять цифр. Это тоже одна формула.
Поместите три ставки вверху в J1, K1 и L1: 0,06, 0,08 и 0,10. Суммы уже находятся в столбце D. Впишите это в J2, затем заполните до L2 и до строки 4.
=$D2*J$1
Прочтите это как два решения, а не как знаки препинания. $D2 привязан к столбцу D и свободен в строке, поскольку сумма всегда находится в D, но меняется построчно. J$1 привязан к строке 1 и свободен в столбце, поскольку ставка всегда находится в строке 1, но меняется столбец за столбцом.
Вот что содержат девять ячеек с арифметикой.
| Количество | В 0,06 | В 0,08 | В 0.10 |
|---|---|---|---|
| 1,200 | 72.00 (1,200 × 0.06) | 96.00 (1,200 × 0.08) | 120.00 (1,200 × 0.10) |
| 950 | 57.00 (950 × 0.06) | 76.00 (950 × 0.08) | 95.00 (950 × 0.10) |
| 1,480 | 88.80 (1,480 × 0.06) | 118.40 (1,480 × 0.08) | 148.00 (1,480 × 0.10) |
Девять правильных ответов, одна формула, набранная один раз. Если вы построили подобную сетку неправильно, симптом очевиден: вся первая строка или весь первый столбец верны, а все остальное — ерунда, потому что единственная копия, которую вы проверяли, была той, которую не нужно было сдвигать.
А теперь представьте это на своих цифрах. Возьмите таблицу, которую вы на самом деле используете, поместите два или три значения сценария поверх пустой области и представьте, какую половину каждого адреса вы бы закрепили. Вам не обязательно его строить. Просто решите для одной формулы, какие два знака доллара вы бы разместили и где.
7. Четыре вещи, которых не делает знак доллара
Каждый из них кого-то ловит, а троих можно увидеть только после повреждения.
Это не меняет ответ там, где вы его набрали. =D2*G1 и =D2*$G$1 вернуть точно такое же число в E2. Разница появляется только тогда, когда формула копируется куда-то еще. Вот почему тестирование одной ячейки ничего не доказывает о заполнении.
Он не защищает ячейку от редактирования. Блокировка ссылки и блокировка ячейки не связаны между собой. Чтобы люди не могли печатать через G1, используется защита листа, которая представляет собой другую функцию в другом меню.
Это не останавливает изменение ссылки при физическом перемещении цели. Это удивляет людей, которые думают, что абсолютное означает постоянное. Вставьте строку выше строки 1, и каждый $G$1 в рабочей книге незаметно перезаписывается на $G$2, поскольку Excel следует указанному вами значению. Абсолют означает «не смещается при копировании формулы», а не «никогда не меняется».
Он не выдерживает разреза. Вырезание ячейки привязки с помощью Ctrl+X и вставка ее в другое место перетаскивает каждую ссылку на нее, знаки доллара и все такое. Копирование этого не дает. Если модель ломается в тот день, когда кто-то приводил в порядок макет, обычно именно поэтому.
8. Когда вам вообще не нужен знак доллара
Есть два способа получить одинаковую защиту без каких-либо знаков препинания, и оба впоследствии читаются лучше.
Назовите ячейку. Выберите G1, введите CommissionRate в поле имени рядом со строкой формул и нажмите Входить. Теперь формула =D2*CommissionRate, что уже является абсолютным и говорит, что это значит для любого, кто откроет файл в следующем году. Определенные имена не изменяются при копировании формулы.
Поместите данные в таблицу. Внутри Таблица Excel, созданная с помощью Ctrl+Т, записывается ссылка на столбец [@Amount] и это означает «сумма в этой строке» по имени, а не по расстоянию. Нечего блокировать и нечего возвращать назад, и ссылка продолжает работать при вставке столбцов. Это одна из веских причин нажать Ctrl+Т в диапазоне, для которого вы собираетесь писать формулы.
Ни один из них не устраняет необходимости понимать знак доллара, потому что вы будете читать рабочие тетради других людей до конца своей карьеры. Но для таблиц, которые вы создаете, легче быть правым в отношении именованного тарифа, чем закрепленного адреса.
Полное до и после
Та же таблица, та же ставка, та же загрузка. Отличие в один персонаж.
До: =D2*G1 | После: =D2*$G$1 | |
|---|---|---|
| Ряд 2 | 96.00 | 96.00 |
| Ряд 3 | 190,00 (использована ставка налога) | 76.00 (950 × 0.08) |
| Ряд 4 | 1554,00 (использован подъем) | 118.40 (1,480 × 0.08) |
| Ряды с 5 по 17 | 0,00 (указан на пустые ячейки) | Каждая сумма × 0,08 |
| Итого по столбцу | 1,840.00 | 1,326.40 |
| Изменить ставку в G1 | Три ряда реагируют, тринадцать нет | Все шестнадцать рядов реагируют |
| Что рецензент видит в первую очередь | Правильный первый ряд | Правильный первый ряд |
Последняя строка — это точка всей страницы. Обе версии проходят проверку, которую проводит большинство людей.
Крайние случаи, которые незаметно нарушают скопированную формулу
Это те, которые выдают число, а не ошибку.
- Диапазон поиска без знаков доллара.
=VLOOKUP(A2,H2:I50,2,FALSE)заполненный становитсяH3:I51, затемH4:I52. Диапазон выскальзывает из нижней части таблицы поиска, и последние строки возвращаются как не найденные без видимой причины. Заблокируйте это:$H$2:$I$50. Подробнее об этом есть в ВПР против XLOOKUP. - Заполнение правильно, когда вы только протестировали. Тест только для столбцов проходит успешно, затем кто-то перетаскивает ту же формулу в сторону, и ссылка на строку так и не была закреплена. Проверьте заливку в обоих направлениях, если формула может быть скопирована в обоих направлениях.
- Смешанная ссылка на неправильной оси.
$D2где ты имел в видуD$2по-прежнему возвращает числа. Это просто неправильные цифры, взятые у вероятного соседа. - Строки вставлены внутри заблокированного диапазона.
$H$2:$I$50расширяется до$H$2:$I$51когда внутри него вставляется строка, что обычно и является тем, что вам нужно. Строки, добавленные внизу, за пределами диапазона, вообще не подбираются. Ссылка на таблицу позволяет избежать всего вопроса. - Условное форматирование использует тот же механизм. Правило формулы записывается один раз для верхней левой ячейки выделенного фрагмента и заполняется для остальных, поэтому один знак доллара превращает выделенную ячейку в выделенную строку.
- Ценность, которая все равно никогда не движется. Если ставка появляется только в одной формуле и нигде больше, знак доллара ни для чего не является решением. Исправление заключается в том, чтобы поместить ставку в ячейку на первое место, чтобы она была видна и доступна для редактирования.
Почему это работает
Сам механизм представляет собой дизайнерское решение с очевидным преимуществом: сохранение смещения вместо адреса позволяет одной типизированной формуле обслуживать шестнадцать строк. Все в этой теме, включая неудачу, является результатом этого единственного выбора.
К этой неудаче стоит отнестись серьезно, потому что ошибки в ссылках являются одним из самых ярких примеров общего вывода о электронных таблицах. Они распространены, дают правдоподобные результаты, и проверка выявляет их меньше, чем люди ожидают. Когда студенты бакалавриата проверяли электронную таблицу, засеянную преднамеренными ошибками, работая в одиночку в течение сорока пяти минут, они обнаружили в среднем 63% ошибок, а группы из трех человек, работавшие вместе, обнаружили 83% (Панко, 1999, Журнал информационных систем управления, 16(2), 159–176). Один рецензент, взглянувший на одну строку, намного ниже любого числа. Если вы строите модели, на которые кто-то может положиться, стоит прочитать более широкий обзор этой литературы (Панко, 1998, Журнал вычислений для конечных пользователей, 10(2), 15–21).
Это аргумент в пользу привычки, приведенный в конце этой страницы, а не в пользу большей осторожности. Уход – это не контроль. Сумма, которую вы предсказали до того, как посмотрели, является контрольной, и именно поэтому на этой странице рядом с каждым числом печатается арифметика.
Одно замечание в шпаргалке ниже. Он создан для того, чтобы его просматривали и вспоминали, а не читали, потому что проверка себя на перенос материала в новые ситуации лучше, чем его повторное изучение, что здесь важно, поскольку вы будете применять это к листам, которые совсем не похожи на приведенный выше (Батлер, 2010, Журнал экспериментальной психологии: обучение, память и познание, 36(5), 1118–1133).
Использование этого в своей книге
Аудит каждой ссылки в унаследованном файле утомителен, и вы откажетесь от второго листа. Вместо этого сделайте это по порядку.
- Найдите числа, введенные внутри формул. Что-нибудь вроде
*0.08или*1.2сидеть в формуле - это ставка, которой негде жить. Сначала переместите его в помеченную ячейку. Вопрос о знаке доллара даже не возникает, пока у стоимости нет дома. - Произнесите предложение вслух для каждого упоминания. «Сумма в этой строке» перемещается. «Ставка» остается. Если вы не можете сказать, какой именно, необходимо проверить эту ссылку.
- Используйте F4 вместо того, чтобы печатать знаки. Меньше нажатий клавиш и нет шансов поставить одну перед неправильной половиной.
- Проверьте последнюю строку, а не первую. Первый ряд заливки – тот, который правильный и в рабочем, и в ломаном варианте. Прокрутите вниз и прочитайте там одну формулу.
- Предскажите общее количество столбца, прежде чем взглянуть на него. Шестнадцать заказов на восемь процентов должны достичь отметки около 1300. В общей сложности 1840 человек не прошли этот тест за одну секунду, и есть еще информация о том, где эти проверки должны быть. проверять свою работу, прежде чем это сделает кто-то другой.
- Назовите якоря, которые вы продолжаете использовать повторно. Ставка, используемая в четырех формулах, заслуживает отдельного имени. Ставка, использованная один раз, не является таковой.
Если у вас под рукой есть бумага, один дополнительный эскиз зафиксирует ее навсегда. Нарисуйте две колонки по четыре коробки. Слева напишите одну формулу вверху и нарисуйте стрелку от каждого поля туда, куда она указывает при копировании вниз. Сделайте это один раз, когда стрелки разветвляются на четыре разных поля, и один раз, когда все четыре стрелки встречаются в верхнем поле. Затем отметьте, на какой картинке нужны знаки доллара. Вам не нужно будет искать это снова.
Все на одном экране
Это лист поиска. Закройте правую колонку, проработайте левую и произнесите каждый ответ вслух, прежде чем проверять его.
| вещь | Что он делает |
|---|---|
| Какие справочные магазины | Направление и расстояние, а не адрес. |
A1 | Родственник. Перемещается вместе с копией в обе стороны. |
$A$1 | Абсолютный. Каждая копия запрашивает одну и ту же ячейку. |
A$1 | Строка заблокирована, столбец свободен. Якоря сидят в один ряд. |
$A1 | Столбец заблокирован, строка свободна. Якоря сидят в одной колонне. |
| порядок F4 | $A$1, A$1, $A1, A1. Мак: Cmd+Т. |
| Вопрос, который нужно задать | «Сумма в этой строке» перемещается. «Ставка» остается. |
| Сетка, заполненная в обе стороны | =$D2*J$1. По одному каждому, одна формула, девять ответов. |
| Почему он выдерживает обзор | Первая строка верна и в сломанной версии. |
| В строке 3 читается 190,00. | Ссылка перешла к следующему предположению. |
| Чтение строк 0,00 | Ссылка попала в пустые ячейки. Пусто — ноль. |
| Вставка строки | Переписывает $G$1 к $G$2. Абсолют не постоянен. |
| Разрезание якоря | Перетаскивает за собой каждую ссылку. Копирование не дает. |
| Диапазон поиска | Зафиксируйте его, иначе он соскользнет со дна стола. |
| Знак доллара не нужен | Определенное имя или [@Amount] внутри стола. |
| Какую строку проверить | Последний. Первый в любом случае прав. |
Еще одна мысль, и мне бы искренне хотелось услышать ответы других людей. Самая дорогая версия этого прогноза, которую я видел, представляла собой прогноз, в котором темпы роста были определены правильно, а базовый год — нет, поэтому каждый столбец незаметно рос из неправильной отправной точки, а форма диаграммы по-прежнему выглядела правильной. Какой из них дольше всего оставался незамеченным в файле, который вы унаследовали?
Ссылки
- Панко, Р.Р. (1999). Применение проверки кода к тестированию электронных таблиц. Журнал информационных систем управления, 16(2), 159–176.
- Панко, Р.Р. (1998). Что мы знаем об ошибках в электронных таблицах. Журнал вычислений для конечных пользователей, 10(2), 15–21.
- Батлер, AC (2010). Повторное тестирование обеспечивает лучшую передачу знаний по сравнению с повторным обучением. Журнал экспериментальной психологии: обучение, память и познание, 36(5), 1118–1133.
Excel для аналитиков состоит из 378 страниц, ссылки читаются по одному символу, с проверками, которые выявляют неправильное заполнение до того, как оно достигнет отчета, и практическими вопросами, которые печатают ответ и причину, по которой он правильный.
Excel для аналитиков, 19 долларов США →тот Курс Excel дает вам повторения: заполняет пробелы в третьей строке, сетки, в которых требуется по одному знаку каждого знака, и вопросы, которые спрашивают, какую строку проверить, а не какой ответ правильный. Теперь вы владеете методом; комплект - это практика. Ничего устанавливать, учетная запись не требуется.
Откройте набор Excel →