|
|
|
ADO + Excel = глюк
|
|||
|---|---|---|---|
|
#18+
Читаю данные из таблицы Excel через ADO: Dim cn As ADODB.Connection Set cn = New ADODB.Connection Dim rs As ADODB.Recordset Set rs = New ADODB.Recordset With cn .Provider = "Microsoft.Jet.OLEDB.4.0" .Properties("Extended Properties").Value = "Excel 8.0;HDR=No;IMEX=1;" .Open App.Path & "\" & IniSource End With rs.Open "Select * from [" & IniSheet & "$]", cn, adOpenForwardOnly, adLockReadOnly Dim Rows() As Variant: Rows = rs.GetRows() , при этом в таблице в одном столбце могут быть данные разных типов, поэтому используется ImportMixedType = Text. Все работает хорошо, но, если при работе программы исходный XLS файл открыт в Excel, то вместо дат возвращаются целые числа, например, вместо 26.09.1996 возвращается 35334 и т.д. И еще заметно тормозится работа программы (в 2-3 раза). Почему так происходит? Можно ли это обойти? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.05.2004, 15:16 |
|
||
|
|

start [/forum/search_topic.php?author=%D0%92%D0%B0%D1%81%D0%B8%D0%BB%D0%B8%D0%B9+%28Black%29&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
6ms |
get forum list: |
14ms |
get settings: |
7ms |
get forum list: |
11ms |
get settings: |
5ms |
get forum list: |
14ms |
get settings: |
5ms |
get forum list: |
18ms |
get settings: |
6ms |
get forum list: |
14ms |
get settings: |
5ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
57ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 8108ms |
| total: | 8340ms |

| 0 / 0 |
