powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как сделать выборку по дате и времени в Recordset (*.csv)
5 сообщений из 5, страница 1 из 1
Как сделать выборку по дате и времени в Recordset (*.csv)
    #37063082
matis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нужно сделать выборку из файла csv по столбцу, в котором значения записаны в виде, например, "22:04 13.1.2011"
Допустим мне нужно вывести все строки с 23:00 13.01.2011 до 10:00 14.01.2011. На ум приходит только что-то типа разбить это значение на составляющие числа, складывать и сравнивать. Но это уже совсем перебор... Еще хорошо бы, чтобы в excel'е месяц в итоге был не 14. 1 .2011, а 14. 01 .2011, но это уже мелочь..

Что-то вроде этого:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
On Error Resume Next
Const adOpenStatic =  3 
Const adLockOptimistic =  3 
Const adCmdText = &H1

Set objConnection = CreateObject("ADODB.Connection")
Set objRecordset = CreateObject("ADODB.Recordset")

strPathtoTextFile = "F:\"

objConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & strPathtoTextFile & ";" & "Extended Properties=""text;HDR=YES;FMT=Delimited"""

objRecordset.Open "SELECT * FROM Recept.csv WHERE (а вот чего - не знаю..), objConnection, adOpenStatic, adLockOptimistic, adCmdText   

Call Sheet4.Range("A10").CopyFromRecordset(objRecordset)
...
Рейтинг: 0 / 0
Как сделать выборку по дате и времени в Recordset (*.csv)
    #37063150
matis,
создаете файлик schema.ini, в котором описываете форматы полей Вашего .CSV. Тогда условие в запросе станет простым, как двери
Код: plaintext
WHERE {столбец с датой} between # 01 / 13 / 2011   23 : 00 # and # 01 / 14 / 2011   10 : 00 #
...
Рейтинг: 0 / 0
Как сделать выборку по дате и времени в Recordset (*.csv)
    #37063174
кладовщик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если не принципиально код писать, то можно попробовать csv сделать связанной таблицей в Акцессе, обработать там ее как хотите и результат тупо экспортировать в Эксель. Я так периодически делаю.
...
Рейтинг: 0 / 0
Как сделать выборку по дате и времени в Recordset (*.csv)
    #37064553
matis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
пробуй камнем,

Теоретически - то, что нужно. Но, похоже, все мои шаманства над типами полей игнорируются...
Если я скажу, что хочу это поле с датой сделать, допустим, текстом, он ведь при открытии этого файла в екселе формат этой ячейки должен показать текстовый? Он показывает, какой и был...

shema.ini:

[Recept.csv]
Format=CSVDelimited
ColNameHeader=True
MaxScanRows=0
CharacterSet=ANSI
Col6=Time_Begin Text
Col7=Time_End DateTime

а вообще можно указывать тип не всем полям документа?
...
Рейтинг: 0 / 0
Как сделать выборку по дате и времени в Recordset (*.csv)
    #37064833
matis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вопрос снят, немного тупила...
Огромное спасибо!!!
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как сделать выборку по дате и времени в Recordset (*.csv)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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