Икер. Я добавил лист с двумя подходами.
Если вы хотите перетащить формулу, просто установите начальный IF, который исключает такие пробелы:
=if(D2="","",if(and(D2>=0,D2<=2),5,if(and(D2>=3,D2<=4),0)))
Я поместил это в свой лист, E2, и перетащите вниз, как вы это делали.
Однако это отличный пример того, где удобны формулы массива. Формула массива может «запустить» весь столбец всего из одной ячейки. Я поместил следующую формулу массива в ячейку I1 своего листа:
=ArrayFormula({"POINT";IF(H2:H="","",IF((H2:H>=0)*(H2:H<=2),5,IF((H2:H>=3)*(H2:H<=4),0,"")))})
Во-первых, имейте в виду, что формулы массива должны иметь неиспользуемое пространство под ними для заполнения результатов. Если вы введете что-либо вручную под формулой массива внутри диапазона, с которым она пытается работать, вы получите сообщение об ошибке. Если вы действительно хотите поместить другие данные под формулой массива, просто ограничьте диапазон в формуле массива (например, измените каждый H2: H на H2: H6 или любой другой конец этого диапазона данных).
ArrayFormula () указывает Google Таблицам применить эту формулу ко всему диапазону в формуле. Поскольку диапазон в формуле - H2: H, каждая ячейка в I2: I будет «зарезервирована» этой формулой массива.
Фигурные скобки {} позволяют нам построить другой настраиваемый массив внутри первого массива.
Поскольку мне нужен заголовок в I1, я помещаю это имя заголовка первым в фигурные скобки. Точка с запятой указывает массиву поместить следующую часть под .
Следующая часть может выглядеть странно, но в основном она такая же, как ваша исходная формула, , за исключением , которое И (), OR (), et c., Внутри массивов не работают. Таким образом, логические операторы внутри массивов разные. В этом случае звездочка * означает И.
Здесь используются те же условия из исходной формулы. И если он не соответствует ни одному из этих критериев (например, если кто-то ввел -1, 7 или M где-нибудь в столбце H, последняя часть последнего IF просто присвоит пробел.