#excel #excel-formula
#excel #excel-формула
Вопрос:
У меня есть этот код Excel, который выбирает значение и пытается выяснить, является ли оно пустым, и напечатать сообщение, если оно пустое, в противном случае значение. Однако я нахожу это слишком сложным для этой простой задачи. Есть ли более чистое решение?
=IF(
ISBLANK(
INDEX(TWerte[#Daten];
MATCH(Serialnummer;TWerte[Serialnummer];0);
MATCH($B20;TWerte[#Kopfzeilen];0)
)
);
"no Value";
INDEX(TWerte[#Daten];
MATCH(Serialnummer;TWerte[Serialnummer];0);
MATCH($B20;TWerte[#Kopfzeilen];0)
)
)
Комментарии:
1. Я не думаю, что у вас много вариантов. Вы могли бы использовать имя на основе формулы. Опять же, я думал о формуле, которая включает
IFERROR
, но я не могу понять, как ее реализовать. Есть ли какая-либо информация о значении, подлежащем анализу? Будет ли это число? Текст? Может быть и то, и другое?2. Я не думаю, что есть более чистое решение, но если вы опубликуете пример ввода данных и ожидаемый результат, возможно, кто-нибудь сможет вам помочь
3. Опубликуйте свои образцы данных, а затем выведите их по своей формуле. Также укажите версию Excel, которую вы используете. В Excel365 есть динамическая формула, которая может очень легко решить вашу проблему.
4. Если у вас есть Excel 365, вы можете использовать
LET
, чтобы избежать дублирования частей вашей формулы5. @chrisneilsen:
LET
было бы моим любимым решением, однако мой Office 365 еще не включает его.
Ответ №1:
Пожалуйста, посмотрите, полезно ли вам приведенное ниже предложение или нет. Используйте только ту INDEX
часть формулы, которая приведена ниже.
INDEX(TWerte[#Daten]; MATCH(Serialnummer;TWerte[Serialnummer];0); MATCH($B20;TWerte[#Kopfzeilen];0)
И для этих ячеек формулы примените пользовательское форматирование ячеек, как показано ниже.
0;-0;"No Value"
Комментарии:
1. Извините. Не решение. Ячейка содержит 0, но ничего не печатает. Пока все в порядке. Но в другой ячейке я проверяю содержимое, и оно не должно проверяться на 0, если ячейка фактически ничего не содержит. Поэтому легче протестировать сообщение об ошибке.