Исправлено: «Ошибка синтаксического анализа формулы» с примерами в Google Таблицах?

Обнаружение ошибки синтаксического анализа в Google Таблицах довольно часто встречается как у новичков, так и у опытных профессионалов. Это способ Таблиц сообщить вам, что с вашей формулой что-то не так, и Лист не может обработать инструкции, данные в формуле. Эти ошибки синтаксического анализа могут быть довольно неприятными, поскольку вы ожидаете вычисляемого результата, но «встречаете» с ошибкой синтаксического анализа, особенно если ошибка возникает в длинной формуле и причина ошибки синтаксического анализа не очевидна.

Ошибка синтаксического анализа формулы в Google Sheets

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Как только Таблицы показывают ошибку синтаксического анализа, они просто говорят вам исправить формулу, аргументы, типы данных или параметры. Ошибка синтаксического анализа формулы — это не единственная ошибка, под ней скрывается множество других ошибок, таких как ошибка #Н/Д, #ошибка и т. д. Ошибка синтаксического анализа не отображается напрямую в неправильной формуле, она показывает ошибку (например, #error ), но когда вы нажимаете на ошибку, в боковом раскрывающемся списке появляется сообщение об ошибке синтаксического анализа формулы, как показано на изображении ниже, где #Error! Происходит в ячейке D11, но при нажатии на нее отображается ошибка синтаксического анализа формулы.

У Google Sheets нет компилятора (обычно это связано с ошибкой синтаксического анализа в компьютерном мире). Когда формула вводится в Google Sheet, Sheets разбирает синтаксис формулы для анализа, классификации и понимания синтаксиса с помощью функции синтаксического анализа. Процесс синтаксического анализа состоит из анализа текста и преобразования текста в токены.

Затем функция анализатора Sheets построит структуру на основе этих токенов и других полученных данных. Если Таблицы не смогут выполнить описанное выше для какой-либо из формул, они вернут ошибку синтаксического анализа. Проще говоря, синтаксический анализ — это разделение большой структуры на более мелкие логические единицы для упрощения хранения данных и манипулирования ими. Затем Sheets повторно компилирует их в соответствии с инструкциями, и если какой-либо из них не работает, это может привести к ошибке синтаксического анализа формулы.

Распространенные причины ошибки синтаксического анализа в Google Sheet

Ниже приведены распространенные причины, по которым вы можете столкнуться с ошибкой синтаксического анализа:

  • В вашей формуле есть опечатка, например, вы забыли поставить кавычки вокруг текстовой строки, поместив два оператора Sheets рядом друг с другом без какого-либо разделения. Кроме того, неполный синтаксис (например, отсутствие скобки в конце формулы) может вызвать ошибку синтаксического анализа формулы.
  • Вы ввели слишком мало аргументов или слишком много аргументов в соответствии с требованиями функции.
  • Типы данных параметров формулы отличаются от того, что ожидает Листы, например, выполнение операции сложения в текстовой строке приведет к ошибке синтаксического анализа.
  • Формула пытается выполнить невозможную математическую операцию (например, деление значения на ноль или пустую ячейку).
  • Формула ссылается на недопустимый диапазон ячеек или файл, на который вы ссылаетесь, не существует или недоступен.

Типы ошибок синтаксического анализа формулы на листе Google

Ниже приведены наиболее распространенные типы ошибок синтаксического анализа в Google Таблицах.

  • Возникло всплывающее окно с проблемой: когда вы сталкиваетесь с ошибкой такого типа в Google Таблицах, это означает, что введенная вами формула неверна, например добавление / в конце формулы, где это не требуется.
  • #N/A Error: Эта ошибка означает, что ваш товар не найден. Просто формула ищет элемент, которого нет в данных.
  • #Div/0 Error: Эта ошибка означает, что вы пытаетесь разделить значение на ноль. Это означает, что расчеты по формуле включают шаг, при котором значение делится на ноль, что математически невозможно.
  • #Ref Error: Эта ошибка означает, что вашей ссылки больше не существует. Мы можем предположить, что ячейки, файлы, ссылки, изображения и т. д., на которые ссылается формула, не существуют или недоступны.
  • #Value Error: эта ошибка означает, что ваш элемент не имеет ожидаемого типа, т. е. если вы добавляете две ячейки, но одна из ячеек содержит текстовую строку, то формула сложения вернет ошибку #value.
  • #Name Error: Эта ошибка означает, что вы неправильно применяете метку. Например, если вы используете именованный диапазон в своей формуле, либо вы забыли добавить двойные кавычки вокруг него, либо имя диапазона недопустимо, это приведет к ошибке #name в Google Sheet.
  • #Num Error: Если результатом вычисления формулы является очень большое число, которое невозможно отобразить или оно недопустимо, это приведет к ошибке #num в Google Sheet, например квадратному корню из отрицательного числа.
  • #Null Error: эта ошибка означает, что возвращаемое значение пустое, хотя таковым быть не должно. Эта ошибка относится к Microsoft Excel и не является собственной ошибкой Google Таблиц. Эту ошибку можно устранить только в Excel, а не в Google Таблицах.
  • #Error Error: Если что-то в вашей формуле не имеет смысла для Google Таблиц, но Таблицы не могут указать виновника (например, проблема с числом, отображая ошибку #num), это может привести к ошибке #. Этот тип ошибки иногда бывает сложно устранить, поскольку он более общий, а все остальные немного специфичны. Другими словами, если ошибка не относится к каким-либо другим типам ошибок, Таблицы для этой ошибки будут показывать #error.

Исправления ошибки синтаксического анализа в Google Sheet

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

1. #Н/Д Ошибка

Эта ошибка происходит от фразы «Недоступно». В основном это происходит в Lookup, HLookup, ImportXML или подобных функциях, которые находят конкретное значение в заданном диапазоне. Если это значение недоступно в заданном диапазоне, это приведет к ошибке #N/A в таблице Google. Поясним понятие на примере.

  1. Посмотрите на таблицу Google на изображении ниже. Он содержит данные в ячейках с B3 по B6, тогда как в ячейке D3 отображается ошибка N/A.
  2. Затем посмотрите на ячейку D3, и вы найдете следующую формулу ВПР:=ВПР(“Киви”,B3:B6,1,0)Н/Д Ошибка в формуле ВПР
  3. Теперь внимательно посмотрите на формулу, и вы заметите, что она ищет киви в списке фруктов, но в этом списке нет киви, поэтому возникает ошибка N/A.
  4. Затем вы можете сбросить ошибку #N/A, либо добавив киви в список, либо изменив формулу для поиска другого значения, такого как яблоки, как показано на рисунке ниже:#Н/Д Ошибка удалена после изменения формулы ВПР

Вы можете использовать аналогичный подход для устранения ошибок #N/A в своей таблице Google.

2. Ошибка #Div/0

Разделение на ноль передается как #Div/O в Google Таблицах. Если какой-либо шаг в вашей формуле делит значение на ноль или на пустую ячейку, это приведет к ошибке #Dive/0. Поясним это на следующем примере:

  1. Ошибка #/Div/0 в ячейке D3 на листе ниже, который имеет 3 столбца: Числа, Разделить на и Результат:#Div Ошибка в таблице Google
  2. Поскольку формула в D3 подразумевает, что значение в B3 (то есть 25) должно быть разделено на значение в C3 (то есть ноль), поэтому формула просит Google Sheets выполнить 25/0, что математически невозможно, поэтому ошибка #Div.Деление на ноль вызывает ошибку #Div
  3. Теперь эту ошибку можно сбросить, удалив ноль из делителя (здесь ячейка C3), или, если это невозможно, то либо оставить формулу как есть (если она не используется в другом расчете), либо замаскировать результат, используя оператор ЕСЛИОШИБКА. функция.
  4. В данном примере давайте замаскируем #Div/0 как неправильное деление, используя IFERROR. Общий синтаксис ЕСЛИОШИБКА следующий:=ЕСЛИОШИБКА(значение, (значение_если_ошибка))
  5. В нашем примере формула будет выглядеть так:=ЕСЛИОШИБКА(“Неверное деление”,(B3/C3))Используйте функцию ЕСЛИОШИБКА, чтобы замаскировать ошибку N/A на листе Google
  6. Теперь вы можете видеть, что результат в ячейке D3 изменился на Неправильное деление.

3. #Ошибка значения

Вы можете столкнуться с ошибкой #value на листе Google, если тип данных хотя бы в ячейке не соответствует тому, что требуется для выполнения вычислений по определенной формуле. Другими словами, Google Sheet может показать ошибку #value, если вы попытаетесь вычислить один тип данных (например, число) из двух разных типов входных данных (например, числа и текстовой строки). Поясним это на примере.

  1. Посмотрите на лист на изображении ниже, и вы заметите ошибку #value в ячейке D3, хотя результаты других ячеек вычисляются правильно.#Value Ошибка в таблице Google
  2. Затем внимательно изучите формулу, и вы заметите, что ячейка D3 является результатом добавления значения в ячейке B3 (то есть 25) к значению ячейки C3 (то есть нулю).#Value Ошибка из-за суммирования текстовой строки с числом
  3. Но ноль — это не число, а текстовая строка, поэтому Google Таблицы не могут добавить строку к числу (разные типы данных) и показывают ошибку #value.
  4. Теперь либо вы измените формулу, либо измените значение в ячейке C3 с нуля (текстовая строка) на 0 (числовое), как показано ниже:Изменение нулевого текста на числовой ноль устраняет ошибку #Value

4. #Ошибка имени

Google Sheet может отображать ошибку #name, если имя функции написано с ошибкой, кавычки отсутствуют в синтаксисе формулы (если требуется) или имя ячейки/диапазона указано неверно. У нас на сайте есть очень подробная статья об ошибках #name, не забудьте ее проверить.

  1. Обратитесь к листу на изображении ниже, и вы заметите ошибку #name в ячейке D3.#Ошибка имени в таблице Google
  2. Ячейка D3 объединяет значения B3 и C3.
  3. Наши ссылки на ячейки (B3 и C3) действительны и не имеют опечатки, теперь внимательно посмотрите на формулу в D3, вы заметите, что формула: = CONCATT (B3, C3)Concatt не является допустимой функцией листа Google
  4. В то время как CONCATT (дополнительная T, добавленная к правильному CONCAT) не является допустимой формулой, она должна была быть: = CONCAT(B3,C3)
  5. Теперь посмотрите на изображение ниже, где ошибка #name устранена после исправления формулы CONCAT.Ошибка #Name устранена после исправления формулы Concat

Давайте возьмем еще один пример, чтобы прояснить идею об ошибке #name из-за значений.

  1. Обратитесь к листу на изображении ниже, и вы заметите ошибку #name в ячейке B3.
  2. А теперь внимательно посмотрите на формулу, разве все не в порядке? Написание функции CONCAT верное, лимон и сок также правильные. Тогда что вызывает ошибку #name?#Ошибка имени Даже формула и значение верны
  3. Лимон и сок — это текстовые строки, и в соответствии с синтаксисом Google Sheets они должны быть заключены в двойные кавычки, как вы можете видеть на изображении ниже, после добавления кавычек вокруг лимона и сока ошибка #name очищается из ячейки B3.Ошибка #Name устранена после добавления двойных кавычек вокруг текстовых строк

5. #Числовая ошибка

Вы можете столкнуться с ошибкой #num на листе Google, если результат вычисления больше, чем максимальная отображаемая емкость Google Sheets, т. е. 1,79769e+308. Например, если мы умножим пятьдесят пять миллиардов на четырнадцать миллиардов в ячейке Google Sheet, это вызовет ошибку #num, поскольку Google Sheets не может отображать такое большое число. Другая причина этой ошибки заключается в том, что тип ввода числа не соответствует требуемому типу типа числа. Давайте обсудим это на примере:

  1. Обратитесь к листу на изображении ниже, и вы заметите ошибку #num в C7.#Num Ошибка в таблице Google
  2. Теперь проверьте формулу, и вы заметите, что столбец C является квадратным корнем из столбца B.
  3. Затем проверьте ячейку B7, и вы обнаружите, что это отрицательное число, но в базовой математике квадратный корень можно вычислить только из положительного числа, поэтому Google Таблицы выдают ошибку #name.Квадратный корень из отрицательного числа, вызывающий ошибку #Num на листе Google
  4. Вы можете исправить это, изменив значение (вы можете использовать функцию ABS, чтобы преобразовать число в положительное), формулу или скрыть результат, используя ЕСЛИОШИБКА (как обсуждалось ранее).

6. Ошибка «#Ошибка»

Если Google Sheet не может понять конкретную формулу, но не может указать причину ошибки (как и другие ошибки, когда мы получаем подсказку, например, в ошибке #num, мы знаем, что проблема связана с числами), то это может привести к ошибке «#error ” ошибка. Поскольку причина ошибки не указана, это более общая ошибка по своему характеру, или мы можем сказать, что если Google Sheet не может связать ошибку с какими-либо другими типами ошибок синтаксического анализа, то он покажет «# ошибка» ошибка. Это может быть результатом отсутствия символов, таких как запятые, апострофы, значения и параметры. Давайте разберемся в этом на следующем примере:

  1. Посмотрите на лист на изображении ниже, и вы заметите «# error error» в ячейке D11.

Ошибка #Error в Google Sheet

  1. Теперь внимательно посмотрите на формулу в D11, и вы заметите, что она выглядит следующим образом (поскольку мы пытаемся суммировать суммы): = “Итого” СУММ (B3: B10)Неправильная формула суммы вызвала ошибку #Error на листе Google
  2. Но общая сумма не является допустимой функцией, и нам понадобится только функция суммы для суммирования таких сумм, как: = СУММ (B3: B10)
  3. Теперь проверьте лист ниже после внесения вышеуказанной поправки, которая устраняет ошибку #error:# Ошибка устранена после исправления формулы СУММ в таблице Google

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

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

7. Ошибка #Ref

Эта ошибка может возникнуть в Google Sheet, если ссылки на ячейки, используемые в формуле, недействительны или отсутствуют. Эта ошибка может в основном возникать из-за следующего:

  • Удаленные ссылки на ячейки
  • Круговая зависимость
  • Ссылка на ячейку вне диапазона данных

#Ref Ошибка из-за удаленных ссылок на ячейки

Если формула ссылается на диапазон ячеек, но этот диапазон ячеек удален, это вызовет ошибку #ref в ячейке формулы. Давайте обсудим пример в этой связи:

  1. Обратитесь к изображению ниже, и вы увидите, что в ячейках с D3 по D7 настроен столбец Sum, который добавляет столбцы B и C.Формула суммы в столбце D
  2. Теперь мы удаляем столбец C, и это вызовет ошибку #ref в столбце D, так как удаляется столбец C, который является частью формулы, таким образом, ошибка #ref.Ошибка #Ref после удаления столбца в таблице Google
  3. Здесь либо отмените удаление столбца C, либо измените формулу, чтобы удалить ссылки на удаленные ячейки.

#Ref Ошибка из-за циклической зависимости

Если ячейка формулы ссылается на себя как на входной диапазон, это вызовет ошибку #ref из-за циклической зависимости. Поясним это понятие на следующем примере:

  1. Обратитесь к листу на изображении ниже, и вы заметите ошибку #ref в ячейке B11.#Ref Ошибка в таблице Google
  2. Теперь посмотрите на формулу в ячейке B11:=СУММ(B2:B11)#Ref Ошибка из-за циклической зависимости
  3. Затем вы заметите, что ячейка B11 ​​также упоминается в диапазоне и также является входной ячейкой для самой себя, поэтому ошибка #ref из-за циклической зависимости.
  4. В этом случае отредактируйте формулу, чтобы удалить ячейку из указанного диапазона, что устранит ошибку #ref из B11:=SUM(B2:B10)#Имя очищается после удаления циклической зависимости в формуле

#Ref Ошибка из-за ссылки на ячейку вне диапазона данных

Если вы используете функцию (например, VLOOKUP) для поиска/извлечения записи в выбранном диапазоне ячеек, но заданная ссылка на ячейку находится за пределами выбранного диапазона, таким образом, #ССЫЛКА! ошибка из-за того, что ссылка на ячейку выходит за пределы диапазона данных. Давайте обсудим это на примере:

  1. Обратитесь к листу, показанному на изображении ниже, и вы заметите ошибку #ref в ячейке F4.#Ref Ошибка в формуле ВПР на листе Google
  2. Теперь посмотрите на формулу, и вы обнаружите, что она относится к 3-му столбцу в диапазоне (от B3 до C7), тогда как диапазон имеет только два столбца (B и C), поэтому ошибка #ref из-за ссылки на ячейку вне диапазон данных.#Ref Ошибка из-за ссылки на столбец, которого нет в диапазоне
  3. Затем отредактируйте формулу, чтобы использовать второй столбец (столбец цены), и, таким образом, устраните ошибку #ref.Ошибка #Ref из-за того, что ссылка на ячейку выходит за пределы диапазона данных, очищенная после изменения формулы для использования правильного столбца

8. Появилось всплывающее окно с проблемой

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

  1. Обратитесь к листу, показанному на изображении ниже, и вы заметите, что при добавлении формулы суммы в ячейку B11 появляется всплывающее окно с проблемой:В листе Google произошла ошибка-проблема

  2. Теперь вы заметите, что в конце формулы есть лишний /, что вызывает обсуждаемую ошибку синтаксического анализа.В листе Google произошла ошибка-проблема
  3. Затем удалите / из формулы, и это устранит ошибку:После удаления косой черты в конце формулы на листе Google была устранена проблема.

9. #Нулевая ошибка

Эта ошибка в основном возникает в Excel, и если вы скопируете данные из листа Excel в лист Google, это может показать ошибку #null. Если лист Excel загружается в Google Sheets, эти данные могут отображать
#error», а не #null. Затем вы либо устраняете ошибку #null в Excel, либо устраняете ошибку «#error» в Google Таблицах (обсуждалось ранее).

Функции для обработки ошибок на большом листе Google

Поскольку приведенные выше примеры были простыми, чтобы прояснить идею, но на большом листе поиск и устранение ошибок становится проблематичным. Мы перечисляем некоторые функции Google Sheet, которые упрощают этот процесс.

Функция ИСНА

Вы можете использовать эту функцию, чтобы проверить выбранный диапазон ячеек на наличие ошибки N/A. Он использует следующий синтаксис:

=ISNA(значение)

ЕОШР Функция

Если вас интересуют все остальные ошибки в диапазоне, кроме ошибки #Н/Д, эта функция выведет список всех таких ошибок. Ниже приведен синтаксис этой функции:

=ISERR(значение)

Функция ТИП ОШИБКИ

Эта функция Google Sheets перечисляет все ошибки на листе в цифрах. Он принимает следующий синтаксис:

=ОШИБКА.ТИП(значение)

Обнаруженные ошибки и соответствующие цифры следующие:

#NULL!=1 #DIV/0!=2 #Value=3 #Ref=4 #NAME?=5 #NUM!=6 #N/A!=7 Все другие случайные ошибки на листе Google=8

Если функция ошибки

Если ошибка синтаксического анализа не может быть исправлена ​​в силу обстоятельств, вы можете скрыть ее с помощью функции ЕСЛИОШИБКА, если никакие другие вычисления не нарушаются. Пожалуйста, используйте его в крайнем случае, потому что это может вызвать непреднамеренные проблемы в будущем. Вы можете обратиться к разделу Ошибка #Div/0, чтобы понять процесс.

Лучшие практики, чтобы избежать ошибки синтаксического анализа

Всегда лучше избежать ошибки, чем тратить бесчисленные часы на ее устранение. Вот некоторые из лучших практик, которые вы можете использовать, чтобы избежать ошибок синтаксического анализа.

  1. Убедитесь, что в формуле не используются такие символы, как % или $.
  2. Знаки препинания в формуле изменяются в соответствии с вашим регионом и языком в таблице Google, поэтому, если вы столкнулись с ошибкой синтаксического анализа в таблице Google, вы можете переключаться между запятыми и точками с запятой или наоборот, чтобы устранить ошибку. В некоторых регионах вам, возможно, придется использовать \ вместо запятых или точек с запятой.
  3. Имейте в виду, что вы должны написать формулу в Google Sheets на английском языке, даже если вы используете Google Sheets на неанглийском языке, таком как французский.
  4. Убедитесь, что ваш язык в настройках электронных таблиц Google Таблиц и часовой пояс установлен на то же место, что и Соединенные Штаты, а не на регион, установленный на Соединенные Штаты, и часовой пояс, установленный на Москву.Установите языковой стандарт и часовой пояс листа Google в одно и то же место
  5. Если в Google Sheet возникает ошибка синтаксического анализа, не забудьте проверить размещение кавычек вокруг текста, ссылок, источников изображений и т. д. Кроме того, следите за тем, когда использовать одинарные кавычки и когда использовать двойные кавычки.
  6. При обращении к ячейке на другом листе в формуле обязательно выберите нужную ячейку на этом листе, а не вводите ее, поскольку иногда это может возвращать ошибку синтаксического анализа.
  7. Обратите внимание, что когда в формуле используются знак плюс и запятая (это может произойти при работе с телефонными номерами), как показано ниже, будет возвращена ошибка синтаксического анализа в таблице Google. +123 456 // Это приведет к ошибке + 123456 // Это не приведет к ошибке
  8. При копировании или ссылке на целые столбцы или строки на листе с другого листа всегда начинайте с 1-го столбца или строки, в противном случае несоответствие строк и столбцов между исходным и конечным листами вызовет ошибку синтаксического анализа.
  9. И последнее, но не менее важное: вот ссылка на гугл лист (без каких-либо макросов, надстроек и т. д., но вы должны скопировать лист в свои Google Таблицы). Это автоматизированный инструмент, созданный как Evaluate Formula Parser (у Google Sheets его нет, тогда как Excel им оснащен). Этот лист можно использовать для оценки формулы, которая показывает ошибку синтаксического анализа. Вы должны использовать этот лист на свой страх и риск, и мы не несем ответственности за любые проблемы, вызванные этим листом.

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

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *