Страницы: 1
RSS
Ошибка при вводе даты в ячейку
 
Здравствуйте!
Помогите, пожалуйста разобраться со значениями аргументов функции ЕСЛИ.
При введении даты в ячейку, она окрашивается в розовый цвет и сбоку в колонках появляется ошибка. Там сбоку желтая ячейка окрашивается в красный цвет.

В ней функция
=ЕСЛИ(RC[-47]=0;0;ЕСЛИ(И(ДЛСТР(RC[-42])=10;ПСТР(RC[-42];3;1)=",";ПСТР(RC[-42];6;1)=",");0;1)).
Там еще вижу вложенные функции (подстановка строки?). Объясните, пожалуйста, откуда и что подставляется.
В ячейке дата почему-то пишется как текст (цифры через запятую)
 
Вы где? На выставке картин? На форуме по рисованию? У Вас для примера нет нормальных файлов?
Правила

Ошибка - наверное, потому, что через запятые - это не дата, текст.
 
Цитата
vikttur написал:Вы где?
на форуме по Excel (если я правильно понял). Представлена мной не живопись!!! А фрагмент интерфейса программы, где в определенных ячейках конкретные значения (функция), по которым у меня вопрос. Здесь только хамить могут?  
 
Цитата
kviten написал: Здесь только хамить могут?
Нет, здесь еще показывают ссылки на правила форума :)
Вы сами себе ограничиваете помощь. Посмотреть формулы вживую в файле - это совсем не то, что на картинке.
А если предлагать Вам измененную формулу - куда ее, в Ваш рисунок? Или помогающему по показанному риунку составить пример?
 
Цитата
kviten написал:
Там сбоку желтая ячейка....
Там еще вижу вложенные функции (подстановка строки?)
Это что - пойди туда, не зная, куда? Где там? С какого боку? Где "там" функция. Про подстановку строки это вы нас спрашиваете или мысли вслух?
There is no knowledge that is not power
 
Цитата
SuperCat написал: пойди туда, не зная, куда?
В ячейке R5C49 (на рис) функция
=ЕСЛИ(RC[-47]=0;0;ЕСЛИ(И(ДЛСТР(RC[-42])=10;ПСТР(RC[-42];3;1)=",";ПСТР(RC[-42];6;1)=",");0;1))
Помогите, пожалуйста, разобраться со значениями аргументов этой функции.
 
ЕСЛИ(условие;да;нет)
ДЛСТР(ссылка) - количество символов в ячейке
ПСТР(ссылка;6;1) - часть текста с 6 символа, длина 1 символ
И() - ИСТИНА, если все словия внутри выполняются. ЛОЖЬ, если не выполнется хоть одно.
 
=ЕСЛИ(RC[-47]=0;0;ЕСЛИ(И(ДЛСТР(RC[-42])=10;ПСТР(RC[-42];3;1)=",";ПСТР(RC[-42];6;1)=",");0;1))
Если в ячейке, смещенной на 47 столбцов влево, 0, то 0.
Далее проверка ячейки, смещенной влево на 42 столбца. ЕСЛИ и длина текста =10, и третий и шестой символы этой ячейки - запятые,то 0, иначе 1.

Вот так, глядя на формулу. Похоже, проверяется дата, но почему там должны быть запятые, не скажу. Возможно, такая изуверская задумка - вводить дату текстом.
Если и после этого вопросы остались, то лучше нарисовать небольшой пример (или обрезать до минимума рабочий файл) и показать его на форуме.
 
кнопка цитирования не для ответа [МОДЕРАТОР]

vikttur, ссылка отправляет на ячейку RC7. В этой колонке даты должны задаваться через запятую (формат общий). Как изменить формат ячейки ввода (с общего на дату), чтобы проверочные поля, в которых функция ЕСЛИ не выдавали ошибку?
Изменено: kviten - 26.12.2015 19:56:42
 
Уже несколько раз - показать пример.
Ответ нужен кому? Кто должен прикладывать к этому максимум усилий?

Цитата
Как изменить формат ячейки ввода (с общего на дату)
Выделить ячейку, Формат_ячейки-Дата
Формулу проверки в этом случае нужно менять, так как дата - это пятизначное число, без разделителей.
 
Здравствуйте kviten. Если Вы зайдете в Параметры--Формулы -- Стиль ссылок R1C1 уберете галочку, формулы примут вид с буквенным обозначением ячеек, может тогда станет понятней от куда, что берется.
Цитата
даты должны задаваться через запятую
Даты не задаются через запятую, они задаются через точку или знак /. Это при обычных настройках, не знаю как задаются если в Параметрах  разделитель целой и дробной части установлен точка.
Изменено: gling - 26.12.2015 20:18:31
 
Цитата
kviten написал:Как изменить формат ячейки ввода (с общего на дату), чтобы проверочные поля, в которых функция ЕСЛИ не выдавали ошибку?
Формат ячейки Вам не поможет.
Судя по картинке, столбец, в котором забита формула, служит для пользователя индикатором правильности ввода данных.
Т.е. для каких-то целей в этом файле необходимо, чтоб дата была в виде дд,мм,гггг - а для Excel это не дата, а текст

С каких побуждений стоит такая проверка с картинок не понять, спросите лучше у того, кто вам его поручил заполнять
Изменено: Ivan.kh - 26.12.2015 20:18:31
 
Ivan.kh,
Если задумка автора вводить даты текстом, насколько это целесообразно? Если учесть, что к отчету есть выборки и по возрастам людей (к примеру, 18 -39; 40 -60 и старше 60? Как затем текст из 10 символов переводить в дату и вычислять возраста (ну это я знаю - от текущего года отнять год рождения)?
 
Цитата
Если задумка автора вводить даты текстом, насколько это целесообразно?
Зависит от того, в чем его задумка. В Excel даты лучше обрабатывать, когда они - числаовые значения, а не текст. Но мало ли что там дальше происходит...
 
Цитата
kviten написал:насколько это целесообразно?
а нам по чем знать, Вы же файл не приложили с примером, а здесь люди экстрасенсорными способностями не обладают? :) Задайте этот вопрос автору, может у него были на это рациональные причины
а по поводу каких-то расчетов с датой в таком виде, то все сделать можно (например =--ПОДСТАВИТЬ(A1;",";".") преобразует дату в ячейке А1 записанную через запятую в нормальный вид)
 
файл с примером - более 3 Мб. Там еще есть отсылки в соседний файл.
 
Цитата
kviten написал: файл с примером
нужен файл-пример, а не Ваш файл (см.,опять-же, Правила)
Согласие есть продукт при полном непротивлении сторон
 
kviten, а по чему Вы не хотите задать вопросы автору этого чудного файл?
 
Цитата
Sanja написал:
нужен файл-пример, а не Ваш файл (см.,опять-же, Правила)
пример Вы это имеете в виду? (там формула в ячейке AW2)
 
Цитата
kviten написал: Вы это имеете в виду?
Эээ...как-бы, не совсем. В Вашем примере все работает и все понятно. Ячейка окрашивается в красный цвет, скорее всего, из-за Условного форматирования (см. в исходном файле). А зачем вводить дату в таком формате по Вашему примеру не понятно
Согласие есть продукт при полном непротивлении сторон
 
У Вас уровень постановки задачи "Бог" :-)
если в дальнейших расчетах не нужно, чтоб дата была записана через запятую, то просто удалите столбец с проверкой!
если же весь "сакральный" смысл всех дальнейших расчетов построен именно на вводе даты через запятую (в чем я на 99% уверен) и Вы в упор отказываетесь вносить даты в формате, как это подразумевал создатель файла, то вводите даты в доп. столбец, а в столбце G введите формулу =ПОДСТАВИТЬ(ТЕКСТ(ДОП.СТОЛБЕЦ;"дд.мм.гггг");".";","), где ДОП.СТОЛБЕЦ - ячейка в которую вы ввели дату.

З.Ы. и все же не понятно:
1) почему Вы не хотите вбивать даты, так как этого требуется в файле?
2) почему не хотите за пояснениями обратится к создателю файла?
Изменено: Ivan.kh - 26.12.2015 22:40:04
 
Итак, тема об ошибке при вводе даты. Вопрос решен.

То, что дата - это не дата и зачем автор так придумал - это уже за рамками данной темы.
Если остались другие вопросы - в новую тему с файлом-примером. Уже половина сообщений вокруг да около: "а почему?" - "а потому", и все об одном и том же.
 
Цитата
Ivan.kh написал:
З.Ы. и все же не понятно:
1) почему Вы не хотите вбивать даты, так как этого требуется в файле?
2) почему не хотите за пояснениями обратится к создателю файла?
1) Мне приходится адаптировать мою базу данных под предлагаемую. В моей базе данных более 6000 строк, причем даты отражены как даты. Кроме этого, даты нужны для выборки в отчете по возрастам (к примеру, группы 18 -39 лет, 40 - 60 лет, старше 60 лет). У меня к Вам просьба, пропишите, пожалуйста, в приведенном мной файле-примере формулу для извлечения даты из текста. У меня не получается. И если, все же, введен формат даты, то какая должна быть формула проверки даты? В доп. столбце файла-примера  пропишите и эту формулу.
2) Насчет второго вопроса, непременно обращусь к автору. Однако он раздражается далеко не меньше модератора в этом вопросе. И, в отличие от модератора, он никакого ответа пока не дает... Модератор хотя бы внятный ответ все-таки дал.  
 
kviten, пример преобразования текста в дату и наоборот во вложении.
 
спасибо большое
Изменено: kviten - 27.12.2015 20:07:08
Страницы: 1
Читают тему
Наверх