Страницы: 1
RSS
Формат даты в VBA и фильтры
 
Имеется документ с формой заполнения данных, где указывается дата автоматически. Дата имеет формат dd.mm.yyyy, после заполнения формы добавляется строчка в общий документ с данными из формы.

Данные в ячейке даты отображаются как и положено, допустим 08.12.2015
Если ввести вручную, руками, например "8 дек", то будет отображаться 08 декабря 2015 г.
НО! В то-же время в строке формул будет написано то-же 08.12.2015

И тут главное. Иногда нужно пользоваться фильтрами, и фильтровать, допустим, по декабрю.
И фильтр не видит те значения, где дата создана скриптом.
Даты же, где написано 08 декабря 2015 г, но в строке формул 08.12.2015 он видит.
Ну, как не видит, видит, но если поставить галочку около "декабрь" то там этой строки не будет

Я пробовал в скриптах писать типа
TheDate = Format(Date, "d mmmm yyyy"), дабы достичь слова "декабря", но тогда там написано "декабря" и в ячейке, и в строке формул тоже
И, как результат, фильр его не видит

Идеи?
Изменено: Topper - 09.12.2015 12:36:08
 
В коде надо приводить к виду даты. Если форма - это UserForm и дата вводится в TextBox, то надо вообще без бубнов:
Код
TheDate = Date
И "Декабрь" делать уже форматом ячейки. При условии, что Date - это получение системной даты.
Если дата получается из TextBox, то так:
Код
TheDate = CDate(TextBox1.Value)
В противном случае в ячейку попадает текст, а не дата. И Excel не будет видеть в этом тексте дату.
Чтобы было более понятно отчего и почему: Как Excel воспринимает данные?
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Цитата
The_Prist написал: TheDate = Date
А так и было. Но тогда в ячейке написано 08.12.2015, и фильтр не воспринимает это как декабрь.
Воспринимает как 12 месяц, который нужно открыть, и поставить галки у каждого дня.
Формат ячейки мусолил мусолил, пытался свое правило отображения создать, но так вменяемого результата не вышло
 
Цитата
The_Prist написал: TheDate = CDate(TextBox1.Value)
Все работает, то что нужно, большое спасибо
 
Приведите весь код целиком, а еще лучше - файл с кодом и данными. Ибо то, что Вы пишите - ни разу не ясно пока.
Видимо, уже не актуально. Ответ был на это:
Цитата
Topper написал: А так и было
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Страницы: 1
Читают тему
Наверх