Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Преобразование даты в число / 8 сообщений из 8, страница 1 из 1
20.08.2016, 01:35
    #39294845
l-evgene
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Преобразование даты в число
Здравствуйте.
Есть задача преобразовать текстовую строку, изображающую дату, в целое число, а затем это число опять в текст. Делаю так:
Код: vbnet
1.
2.
Dim strКонстанта As String
strКонстанта = CStr(CLng(CDate(strДата)))

В режиме отладки:
strДата = "01.07.2016"
CDate(strДата) возвращает 01.07.2016
CLng(CDate(strДата)) возвращает 42552
CStr(CLng(CDate(strДата))) возвращает "42552"

В итоге strКонстанта = "01.07.2016"
В чем засада?
...
Рейтинг: 0 / 0
20.08.2016, 02:59
    #39294849
_гурД
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Преобразование даты в число
l-evgene,

Format(ы) не пробовали вместо Str()?
(До нее - это ведь колич дней с определ даты...)
...
Рейтинг: 0 / 0
20.08.2016, 07:59
    #39294858
MrShin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Преобразование даты в число
Вы просите преобразавать число в текст: CStr(CLng(...)) почему должна получится дата? Используйте CDate или Format c маской даты
...
Рейтинг: 0 / 0
20.08.2016, 13:10
    #39294919
l-evgene
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Преобразование даты в число
MrShinВы просите преобразавать число в текст: CStr(CLng(...)) почему должна получится дата? Используйте CDate или Format c маской даты
Я наверно плохо сформулировал. В том-то и дело, что получается не число, а дата.
Т.е. ожидаемый результат после всех преобразований - "42552", а получается "01.07.2016"
На скринах это видно (примечание: все 3 фотографии сделаны одновременно, т.е. во время одного останова программы)
...
Рейтинг: 0 / 0
20.08.2016, 14:38
    #39294941
MrShin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Преобразование даты в число
l-evgene,

А как объявлена strКонстанта?
...
Рейтинг: 0 / 0
20.08.2016, 14:39
    #39294943
MrShin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Преобразование даты в число
Сорри, не увидел в первом посте. Интересный эффект.
...
Рейтинг: 0 / 0
20.08.2016, 14:44
    #39294945
MrShin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Преобразование даты в число
MrShin,

Мне повторить не удается:
...
Рейтинг: 0 / 0
20.08.2016, 14:46
    #39294947
l-evgene
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Преобразование даты в число
MrShin,
Прошу прощения, проблему решил.
В многоступенчатом операторе If перепутал условия по типам данных dbLong и dbDate.
В результате казалось, что срабатывает одно условие, а срабатывало другое.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Преобразование даты в число / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]