powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Пользовательский формат даты при импорте из Excel
4 сообщений из 4, страница 1 из 1
Пользовательский формат даты при импорте из Excel
    #39607428
pirogon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
День добрый.

Есть файл .xls первый столбец которого имеет пользовательский формат даты.
Никак не могу корректно импортировать данные.


IF !EMPTY(fileforimport)
IMPORT FROM (fileforimport) TYPE XL8 AS 1251
DO WHILE .NOT. EOF()
IF EOF()
EXIT
ENDIF
SCATTER NAME otmp
INSERT INTO DATA\TEMP\Tmp_tran.dbf (dt_op) VALUES (otmp.a)

вроде все просто, но в ступоре уже пару часов.
...
Рейтинг: 0 / 0
Пользовательский формат даты при импорте из Excel
    #39607548
Фотография Redrik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
fileforimport=GETFILE("XLS")
*
oXLObj=CREATEOBJECT("Excel.Application")
oXLApp=oXLObj.APPLICATION
oWBook=oXLApp.WorkBooks.OPEN(fileforimport)
LastRow=oXLApp.ActiveSheet.UsedRange.SpecialCells(11).Row
laTable=oXLApp.ActiveSheet.Range("A1:A"+ALLTRIM(STR(LastRow))).Value
oXLApp.QUIT
RELEASE oXLObj, oXLApp, oWBook
*
CREATE CURSOR Tmp_tran1 (dt_op T)
INSERT INTO Tmp_tran1 FROM ARRAY laTable
GO TOP
BROWSE NOWAIT

CREATE CURSOR Tmp_tran2 (dt_op D)
INSERT INTO Tmp_tran2 FROM ARRAY laTable
GO TOP
BROWSE NOWAIT
...
Рейтинг: 0 / 0
Пользовательский формат даты при импорте из Excel
    #39608703
pirogon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Огромное Спасибо! Именно то, что было нужно!)
...
Рейтинг: 0 / 0
Пользовательский формат даты при импорте из Excel
    #39608779
Фотография Redrik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пожалуйста!

Ещё может пригодиться предварительное "переформатирование" элементов массива:
Код: sql
1.
2.
3.
FOR i=1 TO ALEN(laTable)
	laTable(i)=ICASE(VARTYPE(laTable(i))="N" AND laTable(i)=0,NULL,VARTYPE(laTable(i))="D" AND laTable(i)={},NULL,VARTYPE(laTable(i))="C",ALLTRIM(laTable(i)),laTable(i))
ENDFOR


Иногда я так делаю перед вставкой в XLS.
Это, конечно, далеко не все варианты, но как пример...
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Пользовательский формат даты при импорте из Excel
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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