Двоеточие в excel что это

Excel для Microsoft 365 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Excel 2007 Еще…Меньше

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

Типы операторов. Существуют четыре разных типа операторов вычислений: арифметическое, Сравнение, Объединение текстаи ссылка.

  • Арифметические операторы

    Арифметические операторы служат для выполнения базовых арифметических операций, таких как сложение, вычитание, умножение, деление или объединение чисел. Результатом операций являются числа. Арифметические операторы приведены ниже.

    Арифметический оператор

    Значение

    Пример

    + (знак «плюс»)

    Сложение

    = 3 + 3

    – (знак «минус»)

    Вычитание
    Отрицание

    = 3 – 3
    =-3

    * (звездочка)

    Умножение

    = 3 * 3

    / (косая черта)

    Деление

    = 3/3

    % (знак процента)

    Доля

    30

    ^ (крышка)

    Возведение в степень

    = 3 ^ 3

  • Операторы сравнения

    Операторы сравнения используются для сравнения двух значений. Результатом сравнения является логическое значение: ИСТИНА либо ЛОЖЬ.

    Оператор сравнения

    Значение

    Пример

    = (знак равенства)

    Равно

    = A1 = B1

    > (знак «больше»)

    Больше

    = A1>B1

    < (знак «меньше»)

    Меньше

    = A1<B1

    >= (знак «больше или равно»)

    Больше или равно

    = A1>= B1

    <= (знак «меньше или равно»)

    Меньше или равно

    = A1<= B1

    <> (знак «не равно»)

    Не равно

    = A1<>B1

  • Текстовый оператор конкатенации

    Амперсанд (&) используется для объединения (соединения) одной или нескольких текстовых строк в одну.

    Текстовый оператор

    Значение

    Пример

    & (амперсанд)

    Соединение или объединение последовательностей знаков в одну последовательность

    = «Север» & «обмотка» — это результат «Борей».
    Если ячейка a1 содержит «Last Name», а B1 — «First Name», = a1& «,» &B1 — «фамилия, имя».

  • Операторы ссылок

    Для определения ссылок на диапазоны ячеек можно использовать операторы, указанные ниже.

    Оператор ссылки

    Значение

    Пример

    : (двоеточие)

    Оператор диапазона, который образует одну ссылку на все ячейки, находящиеся между первой и последней ячейками диапазона, включая эти ячейки.

    B5:B15

    ; (точка с запятой)

    Оператор объединения. Объединяет несколько ссылок в одну ссылку.

    = СУММ (B5: B15, D5: D15)

    (пробел)

    Оператор пересечения множеств, используется для ссылки на общие ячейки двух диапазонов.

    B7:D7 C6:C8

Нужна дополнительная помощь?

F3:F11 — это диапазон, но вы вводите его в месте, где уместно указать только одно значение, поэтому Excel пытается выбрать одно значение из диапазона, используя следующие правила:

  • Если диапазон находится в одном столбце (как это есть), Excel выбирает ячейку из этого столбца в той же строке, что и ссылающаяся ячейка (или ошибка #VALUE! если диапазон не пересекает эту строку)
  • Если диапазон находится в одной строке, Excel выбирает ячейку из этой строки в том же столбце, что и ссылающаяся ячейка (или ошибка # #VALUE! если диапазон не пересекает этот столбец)
  • Если диапазон является двухмерным, Excel выбирает ячейку из той же строки и столбца, что и ячейка ссылки (или ошибка # #VALUE! если диапазон не пересекает строки и столбцы диапазона) — очевидно, это работает только тогда, когда диапазон и вызывающая ячейка находятся на разных листах

Внимание:

  • Если ссылка на диапазон дается там, где диапазон или массив уместны, будет использоваться весь диапазон — поэтому в ячейке M4 =F3:F11+1 будет 31, но =sum(F3:F11,1) будет 331.
  • Если эта формула будет введена как формула массива (используя ctrl+shift+enter) в одной и той же ячейке, она вернет весь массив, но вы увидите только одну ячейку, поскольку это все, что вписывается в диапазон результатов. Результат будет 10. Предположительно Google ARRAYFORMULA работает так же.

Когда это полезно?

В общем, я не люблю использовать это поведение при обращении к ячейке в той же таблице — обычная относительная ссылка (F4) работает так же хорошо, и мне не нужно беспокоиться о том, как мои формулы будут интерпретировать ссылку. (См. Предостережение выше.)

Однако одно из применений — это когда вы хотите, чтобы один рабочий лист совмещался один с другим. Я могу привести нужные столбцы в ссылку на столбец (например, =Sheet1!$A:$A) и пусть остальные столбцы будут вычисляемыми полями. Я мог бы сделать это и с относительной ссылкой (например, =$A1 и перетащить вниз), но ссылки на столбец имеют преимущества — я могу вставлять, удалять или сортировать строки в исходном листе, не нарушая ссылок. (С ссылками на одну ячейку я получу, при вставке, строку, отсутствующую в ссылочных данных; при удалении, #REF! ошибка; на сортировке, эти два листа больше не будут в том же порядке.)

При частом вводе данных в формате времени (2:30), необходимость ввода двоеточия «:» серьезно снижает скорость работы. Возникает вопрос: Можно ли обойтись без ввода двоеточия?

В EXCEL при вводе данных в формате времени есть возможность избежать ввода двоеточия.

Изменяем формат ячейки

Пример Пусть нам требуется вводить часы и минуты каких-нибудь событий.

  • Выделите ячейку А1 .
  • Отобразите вкладку Число окна Формат ячеек ( Главная/ Число/ Формат ячеек или нажав CTRL+1 выберите вкладку Число).
  • В списке Числовые форматы выберите Все форматы.
  • В поле Тип введите #»:»00 или 00″:»00 (в чем разница будет показано ниже)
  • Нажмите ОК .

Теперь можно вводить время, используя только числа. Введем в A1 число 230 и в ячейке увидим значение 02:30, если был установлен формат 00″:»00 и 2:30, если формат #»:»00. Для 4-х значных чисел оба формата дадут одинаковый результат.

Необходимо учитывать, что ячейка не содержит значение в формате времени, она содержит число 230. В этом можно убедиться, посмотрев на Строку формул – в ней отображается 230, а не 2:30. Изменив формат ячейки на пользовательский , мы изменили лишь формат отображения значения. 

Если со значениями времени не нужно выполнять никаких действий, то задачу можно считать выполненной. Но если значения нужны для расчетов, то нужно разобраться, что делает EXCEL при вводе в ячейку значения с двоеточием, т.е. после нажатия клавиши ENTER .

Преобразование в формат времени

EXCEL интерпретирует введенное значение 2:30 (т.е. «2 двоеточие 30»), как время, т.е. устанавливает Формат ячейки Время, затем вводит в ячейку число 0,104167 (но в Строке Формул отображается 2:30:00. Если изменить формат ячейки на Число , то увидим 0,104167). Откуда взялось это число 0,104167? В форматах Время и Дата принято, что одним суткам соответствует число единица. Соответственно, один час в формате даты это 1/24 (т.к. в сутках 24 часа), а одна минута – 1/(24*60)=1/1440. Число 0,104167 из 2:30 получается так: 2 часа/24 + 30 минут/1440.

Для тех, кто не хочет возиться с двоеточием и кому нужны значения в формате Времени — алгоритм такой (см. файл примера ):

  • в ячейку А1 вводим дату без двоеточия, в виде числа, например 230;
  • устанавливаем пользовательский формат времени 00″:»00 (если необходимо);
  • в любой другой ячейке, например В1 , пишем формулу =(ЦЕЛОЕ(A1/100)/24)+ ((A1-(ЦЕЛОЕ(A1/100)*100))/1440) (получаем 0,104167);
  • меняем формат ячейки В1 на Время и получаем полноценное время – 2:30. С этим значением можно производить вычисления в формате ВРЕМЯ.

В файле примера также показано как ускорить ввод в формате чч:мм:сс (обязательно должны быть указаны часы, т.е. число должно быть >10000, т.е. 1:00:00).

Там же, «по просьбе телезрителей», показано как преобразовать любое число от 1 до 235959 в формат чч:мм:сс. Причем можно указывать только секунды, минуты и секунды, ну и конечно часы, минуты и секунды.

Еще задача: Если пользователь захотел сохранить значение времени 5 часов 23 минуты в числовом формате 5,23, т.е. часы в целой части числа, а минуты в дробной после запятой, то формула для перевода в стандратный формат времени следующая:

=ВРЕМЯ(ЦЕЛОЕ(A41);ОКРУГЛ((A41-ЦЕЛОЕ(A41))*100;0);)

в итоге, после применения формата ячейки ч:мм, получим 5:23.

 

Xapa6apga

Пользователь

Сообщений: 372
Регистрация: 07.02.2014

#1

05.02.2015 13:08:00

Здравствуйте, прошу Вас немного просветить.
Для чего пишут :=, можно же просто =?
Пример:

Код
ActiveSheet.Unprotect Password:="Pingvin"
ActiveSheet.Unprotect Password="Pingvin"

Какая разница и зачем оно употребляется?
Заранее благодарен!

П.С.
Прошу сильно не кричать, VB пытаюсь освоить сам .

Изменено: Xapa6apga05.02.2015 23:05:20

 

Sanja

Пользователь

Сообщений: 14838
Регистрация: 10.01.2013

#2

05.02.2015 13:39:48

Цитата
Xapa6apga пишет: зачем оно употребляется?

для указания значения параметра метода объекта, без привязки его (параметра) к конкретной позиции в перечне параметров данного метода.
З,Ы. Сам ничего не понял  :)

Ваш пример не показателен.

Для наглядности.
Чтобы указать значение параметра SearchFormat без указания других НЕобязательных параметров в такой строке:
Range(«A1:A10»  ;)  .Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SearchFormat)

нужно ввести много значимых запятых

Код
Range("A1:A10").Find("Искомое_значение",,,,,,,,"Нужный_формат")

а можно указать сразу, без использование значимых запятых

Код
Range("A1:A10").Find(What:="Искомое_значение",SearchFormat:="Нужный_формат")

Изменено: Sanja05.02.2015 23:05:30

Согласие есть продукт при полном непротивлении сторон.

 

Jack

Пользователь

Сообщений: 352
Регистрация: 01.01.1970

#3

05.02.2015 13:43:22

Цитата
Sanja пишет: без привязки его (параметра) к конкретной позиции

т.е. когда много параметров через := можно указывать их в любой последовательности.

 

Sanja

Пользователь

Сообщений: 14838
Регистрация: 10.01.2013

да

Согласие есть продукт при полном непротивлении сторон.

 

Karataev

Пользователь

Сообщений: 2306
Регистрация: 23.10.2014

два символа := нужны,чтобы VBA понял,что это параметр метода.
vba просматривает код и если видит два символа := то понимает,что это параметр метода
то есть это такой синтаксис языка vba

 

Xapa6apga

Пользователь

Сообщений: 372
Регистрация: 07.02.2014

ААааа, спасибо большое!

Jack

, более понятно, как для Оленя объяснил )

 

suricat555

Пользователь

Сообщений: 132
Регистрация: 09.08.2015

#7

04.08.2019 22:42:19

Здравствуйте! У меня именно такой же вопрос.
Из этой темы я поняла, что двоеточие ставится, когда перечисляются несколько параметров в одну строку.

Если я пишу так, то макрос работает:

Код
Cells.AutoFilter Field:=1, Criteria1:="*Москва*"

А если я хочу не указывать двоеточия и перечисляю критерии в столбик, то не работает. Макрос ставит только фильтр:

Код
Cells.AutoFilter
Field = 1
Criteria1 = "*Москва*"

А почему? Нужно обязательно указывать это в строчку и с двоеточием?  

Изменено: suricat55504.08.2019 23:02:05

 

Kuzmich

Пользователь

Сообщений: 7998
Регистрация: 21.12.2012

#8

04.08.2019 22:56:50

Цитата
перечисляю критерии в столбик, то не работает.
Код
Cells.AutoFilter _
Field:=1, _
Criteria1:="*Москва*"
 

это в коде присвоить пареметру процедуры (функции) определенное значение

Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!

 

Sanja

Пользователь

Сообщений: 14838
Регистрация: 10.01.2013

#10

05.08.2019 07:21:15

Цитата
suricat555 написал: перечисляю критерии в столбик

Для компилятора каждая строка является самостоятельной единицей кода, поэтому он (компилятор) не относит строки Field = 1 и Criteria1 = «*Москва*» к фильтру. Что бы записать так как хотите Вы нужно использовать нижнее подчеркивание (см пример от Kuzmich, ). Такой прием обычно используется когда строка кода получается не удобно длинной. В Вашем случае это не нужно

Изменено: Sanja05.08.2019 07:26:54

Согласие есть продукт при полном непротивлении сторон.

 

RAN

Пользователь

Сообщений: 7091
Регистрация: 21.12.2012

#11

05.08.2019 09:35:00

Цитата
suricat555 написал:
А если я хочу не указывать двоеточия

А если макрос не хочет работать без двоеточий?
Кто кого?  :D

 

Я поняла, спасибо огромное!  :D  А почему у меня не вышло сообщение об ошибке?.. Я же помню, когда я неверно вводила команду, у меня была ошибка 1004. Я хотя бы поняла, в какой строке косяк. А сейчас макрос просто не выполнил команду и не предупредил меня ))))))  

 

RAN

Пользователь

Сообщений: 7091
Регистрация: 21.12.2012

#13

05.08.2019 10:31:08

А ежели-бы добавили строку Option Explicit, тогда бы предупредил

Код
Option Explicit

Sub qq()
Cells.AutoFilter
Field = 1
Criteria1 = "*Москва*"
End Sub
 

Спасибо! Сегодня попробую. Сейчас нет доступа к excel. Наверное надо бы в любом макросе эту строку вставлять. Так надежнее ))

 

sokol92

Пользователь

Сообщений: 4445
Регистрация: 10.09.2017

#15

05.08.2019 15:16:34

Цитата
suricat555 написал:
Наверное надо бы в любом макросе эту строку вставлять. Так надежнее

Золотые слова, хоть в девиз форума! :)  

Владимир

F3:F11 — это диапазон, но вы вводите его в том месте, где уместно давать только одно значение, поэтому Excel пытается выбрать одно значение из диапазона, используя следующие правила:

  • если диапазон находится в одном столбце (как это) Excel выбирает ячейку из этого столбца в той же строке, что и ссылающаяся ячейка (или ошибка #VALUE! если диапазон не пересекает эту строку)
  • если диапазон в одной строке, Excel выбирает ячейку из этого строка в том же столбце, что и ссылающаяся ячейка (или ошибка #VALUE! если диапазон не пересекает этот столбец)
  • если диапазон 2-мерный, Excel выбирает ячейку из той же строки и столбца, что и ссылающаяся ячейка (или ошибка #VALUE! если диапазон не пересекает строки и столбцы диапазона) — очевидно, что это работает только тогда, когда диапазон и вызывающая ячейка находятся на разных листах

внимание:

  • если задана ссылка на диапазон там, где диапазон или массив является подходящим, будет использоваться весь диапазон — так, в ячейке M4,=F3:F11+1 было бы 31, но =sum(F3:F11,1) будет 331.
  • если ввести формулу массива (с помощью ctrl+shift+enter) в одной ячейке, формула вернет весь массив, но вы увидите только одну ячейку, так как это все, что вписывается в диапазон результатов. Результат будет 10. Предположительно Google ARRAYFORMULA работает точно так же.

когда это полезное?

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

одно использование для этого, однако, когда вы хотите, чтобы один лист выстраиваться один-к-одному с другим. Я могу принести столбцы, которые я хочу, в ссылке на столбец (например,=Sheet1!$A:$A) и пусть другие столбцы-вычисляемые поля. Я мог бы сделать это и с относительной ссылкой (например =$A1 и перетащите вниз), но есть преимущества для ссылки на столбец — я могу вставлять, удалять или сортировать строки в исходном листе, не нарушая ссылки. (С одноклеточными ссылками я получу, при вставке, строку, отсутствующую в ссылающихся данных; при удалении, a #REF! ошибка; при сортировке два листа больше не будут находиться в одном и том же порядке.)

В функциях Excel существует четыре типа операторов.

Математические операторы

Математические операторы – это операторы простых действий, а именно сложения, вычитания, умножения и т. д. Вводятся с помощью клавиатуры.

  • + (плюс) – сложение;
  • – (минус) – вычитание или отрицание;
  • * (звездочка) – умножение;
  • / (косая черта) – деление;
  • % (знак процента) – процент;
  • ^ (знак крышки) – возведение в степень.

Операторы сравнения

Операторы сравнения – это операторы сравнения разных значений, результатом которого является логическое выражение «ИСТИНА» или «ЛОЖЬ».

  • = (знак равенства) – равно;
  • > (знак «больше») – больше;
  • < (знак «меньше») – меньше;
  • >= (знак «больше или равно») – больше или равно;
  • – меньше или равно;
  • <> (знак «не равно») – не равно.

Текстовый оператор

Текстовый оператор амперсанд (&) – это оператор объединения нескольких текстовых отрывков в одну строку.
& (амперсанд) – объединение двух последовательностей знаков в одну последовательность.

Операторы ссылок

Оператор ссылок – это оператор ссылки на диапазон ячеек.

  • : (двоеточие) – используется между ссылками на первую и последнюю ячейки диапазона. Такое сочетание представляет собой ссылку на диапазон, например, A10:C20;
  • ; (точка с запятой) – оператор объединения нескольких ссылок в одну, например, СУММ(С10:В15; Е45:Т30);
  • знак пробела – оператор пересечения множеств, который используется для ссылки на общие ячейки двух диапазонов. Например, В10:D20 C15:C25.

Каков приоритет у операторов?

В случае использования в формуле нескольких операторов, они выполняются в следующем порядке:

  1. Операторы ссылок (двоеточие, точка с запятой, пробел).
  2. Минус.
  3. Процент.
  4. Возведение в степень.
  5. Умножение и деление.
  6. Сложение и вычитание.
  7. Объединения нескольких текстовых отрывков в одну строку.
  8. Операторы сравнение.

[stextbox id=»warning» caption=»Примечание»]Если формула содержит операторы с одинаковым приоритетом, то они исполняются слева направо. Для изменения порядка вычисления в формулах можно использовать круглые скобки.[/stextbox]

Формула — комбинация
построения значений адресов, имен,
функций и операторов, которые определяют
правила результата в ячейке.

В Excel используются
следующие символы операций:
+,-,*,/,%,^,&,=,<,>,<=,>=,<>,и символы
адресных операций — это двоеточие, точка
с запятой и пробел. Двоеточие задает
диапазон, точка с запятой — объединение
диапазонов, а пробел их пересечение.

В порядке убывания
приоритета операции располагаются в
следующем порядке: диапазон
-«:»,процент-«%»,возведение-«;»,отрицание-«-«,умножение
и деление-«*»,»/»,сложение и
вычитание-«+»,»-«,конкатенация
текста-«&»,операции сравнения
-,=,<,>,<=,>=,<>.

Когда Excel не может
вычислить значения по формуле, то
выдается сообщение об ошибке.

####-не достаточна
ширина ячейки,

#Дел/0!-деление на
0,

#Н/Д — неопределенные
данные,

#ИМЯ? — не распознается
имя,

#ПУСТО! — наличие
2 непересекающихся областей,

#Число! — проблемы
с числом,

#ССЫЛ! — неверная
ссылка на ячейку,

#ЗНАЧ! — значение
не того типа.

58. Матричные функции в Excel.

При обработке
экономической информации часто
приходится работать с массивами. Массивы
— это прямоугольные диапазоны значения
или формулы, которые Excel обрабатывает
как единую группу. Результатом обработки
массивов, с помощью формул и функций
может быть как массив, так и одно
значение. Для решения матричных уравнений
чаще всего используются следующие
функции: (M1;M2); МОБР(М); МОПРЕД(М); ТРАНСП(М).

Матричные формулы
действуют на все ячейки матрицы. Нельзя
изменить отдельные ячейки в области,
которая определена для матричной
операции. Результат появляется в
выделенной области после нажатия
комбинации клавиш <Shift+>+<Ctrl+<Enter>.

59.Использование имен в формулах Excel.

Использование
имен упрощает запись формул. Для задания
имени нужно выделить область и в меню
Вставка открыть подменю Имя, вызвать
директиву Присвоить и в открывшемся
окне указать имя области. Имя должно
начинаться с буквы и содержать не более
255 символов. Не рекомендуется использовать
знаки пробел и дефис. Имя не должно
совпадать с адресами ячеек.

Преимущества
используются имен в формулах Excel:

Имена уменьшают
вероятность появления ошибок в формулах

Имена легче
запоминаются, чем ссылки на ячейки

Можно дать имя
любой константе или формуле использовать
ею в других формулах

Именованные
диапазоны могут сжиматься и растягиваться
при вставке и удалении формул

Имена облегчают
перемещение по таблице

Макросы с именами
становятся более универсальными и
легче поддаются коррективе

Имена облегчают
ввод ссылок на рабочие листы, находящиеся
в других книгах

Один и тот же набор
имен может использоваться во всей
рабочей книге

60. Макропрограммирование
в Excel
.

Для автоматизации
выполнения чисто повторяемых действий
в Excel используется встроенный язык
макропрограммирования. Во всех
приложениях Microsoft Office получил
распространение VBA (Visual Basic for Applications).
Макросы — это программы, написанные на
VBA существует два способа создания
макросов:

1)Запись действий,
выполняемых пользователем в Excel. Создавая
макрос, макрорекордер Excel записывает
все действия пользователя (нажатие
клавиш, перемещение курсора, чтение
данных, обращение к функциям, присвоение
свойств объектам и т.д.) и интерпретирует
их как последовательность команд VBA.
Макросы записываются в листы макросов
или модулируются. Модуль может содержать
несколько процедур, которые могут
обмениваться данными между собой.

2)Программирование
макросов. Этот способ используется в
тех случаях, когда необходимо
сконструировать макрофункции или более
сложные процедуры с диалогом, циклами,
анализом ситуаций. Поскольку макрорекордер
не занимается оптимизацией, используют
заготовку, полученную с помощью
макрорекордера, для ее дальнейшей
оптимизации.

При создании
макроса первым способом необходимо
выбрать в меню Сервис команду Макрос
и затем Начать запись. В появившемся
окне можно дать имя создаваему макросу
или оставить стандартное, задать
сочетание клавиш для быстрого запуска
макроса, выбрать книгу для сохранения,
а также в поле Описание указать любой
комментарий. После окончания записи
макроса нужно выполнить команду
Остановить запись.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

I am learning excel functions and modeling from Google and trial and errors so just want to clarify the following point to get my fundamental understanding correct:

When it comes to colon in excel, I understand that it means defining a range of cells, but when I enter =F3:F11 excel gives the result 30. May I know why is that so? I was trying to interpret it using average / mode etc. and evaluated the formula but fail to find any logical meaning behind it.

enter image description here

fixer1234's user avatar

fixer1234

26.9k61 gold badges72 silver badges116 bronze badges

asked Apr 29, 2015 at 2:08

unacorn's user avatar

5

F3:F11 is a range, but you’re entering it in a place where it’s only appropriate to give a single value, so Excel tries to choose one value from the range, using the following rules:

  • If the range is in a single column (as this is) Excel chooses the cell from that column in the same row as the referring cell (or the error #VALUE! if the range doesn’t intersect that row)
  • If the range is in a single row, Excel chooses the cell from that row in the same column as the referring cell (or the error #VALUE! if the range doesn’t intersect that column)
  • If the range is 2-dimensional, Excel chooses the cell from the same row and column as the referring cell (or the error #VALUE! if the range doesn’t intersect the range rows and columns) — clearly this only works when the range and calling cell are on different worksheets

Caution:

  • If the range reference is given where a range or array is appropriate, the entire range will be used — so, in cell M4, =F3:F11+1 would be 31, but =sum(F3:F11,1) would be 331.
  • If entered as an array formula (using ctrl+shift+enter) in the same single cell, the formula will return the entire array but you’ll only see one cell, since that’s all that fits in the result range. The result will be 10. Presumably Google’s ARRAYFORMULA works the same way.

When is this useful?

In general I don’t like to use this behavior when referring to a cell in the same table — an ordinary relative reference (F4) works just as well, and I don’t need to worry about how my formulas will interpret the reference. (See cautionary statement above.)

One use for this, though, is when you want one worksheet to line up one-to-one with another. I can bring the columns I want over in a column reference (eg =Sheet1!$A:$A) and let the other columns be calculated fields. I could do this with a relative reference as well, (eg =$A1 and drag down) but there are advantages to referencing the column — I can insert, delete, or sort rows in the source sheet without breaking the references. (With single-cell references I’d get, on insert, a row missing from the referring data; on delete, a #REF! error; on sort, the two sheets would no longer be in the same order.)

answered May 4, 2015 at 9:08

maybeWeCouldStealAVan's user avatar

5

Short answer:
If you got here from Google because you’re editting a spreadsheet and suddenly you’re getting #VALUE, try entering the cell and pressing Ctrl+Alt+Enter


Long answer, expanding on maybeWeCouldStealAVan’s point:

If the range is in a single column (as this is) Excel chooses the cell from that column in the same row as the referring cell (or the error #VALUE! if the range doesn’t intersect that row)

This behaviour is different depending on whether or not the formula is an Array Formula*

In below image in C3 I have =A5:A7, which is an error as there’s no value in that range that is in row 3 (the referencing cell).

In D3 I have the same =A5:A7,but I have pressed Ctrl+Shift+Enter. This is just Excel trying to convert an Array to a single cell and is not particularly useful:

array ref example

Where this becomes powerful is if you want to apply a function on each row, e.g this product and sum operation:

product and sum

* the discovery of which is the product of 1 hour of painful debugging, so hopefully I’ve saved someone some pain…

answered Jun 13, 2020 at 18:35

RJFalconer's user avatar

RJFalconerRJFalconer

10.2k4 gold badges42 silver badges51 bronze badges

Понравилась статья? Поделить с друзьями:
  • Двссыл в excel сбор данных с нескольких листов
  • Движущиеся графики в excel
  • Двссыл в excel примеры на разных листах
  • Движение товара на складе excel
  • Двссыл в excel видео