Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Помогите пожалуйста с excel / 13 сообщений из 13, страница 1 из 1
18.11.2009, 15:33
    #36317591
dima_18
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с excel
Здравствуйте Всем!
Будте добры подскажите пожалуйста с решением следующей проблемы. Никак не понимаю как сделать это. Есть файл excel. Нужно данные из него прочитать и расположить в dbf (рассортировав) при этом их.
Пример в excel файле:

aa dddd ccccc
ss fffff rrrrrrr
qq ssss gggg
и т.д.

есть таблица dbf c полями: field1 field2 field3
Нужно чтоб стало следующее:

field1 field2 field3
aa dddd ccccc
ss fffff rrrrrrr
qq ssss gggg


Заранее всем большое спасибо. Помогите пожалуйста. Если есть примерчик - хоть простенький - пришлите пожалуйста на электронный адрес, Если нетрудно - я поразбираюсь! Еще раз большое спасибо!
...
Рейтинг: 0 / 0
18.11.2009, 15:36
    #36317604
dima_18
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с excel
забыл электронный адрес написать: new31dimas_3118@mail.ru
...
Рейтинг: 0 / 0
18.11.2009, 15:56
    #36317666
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с excel
> Автор: dima_18
> Будте добры подскажите пожалуйста с решением следующей проблемы. Никак не понимаю как сделать это. Есть файл
> excel. Нужно данные из него прочитать и расположить в dbf (рассортировав) при этом их.

Как вариант

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
23.11.2009, 14:38
    #36325958
dima_18
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с excel
Большое спасибо за ответ, Игорь Горбонос!

К сожалению я пока не понимаю все равно как это сделать! Вы не могли бы пожалуйста написать кусок текста - как работать с excel (сначала открыть файл, затем написать какие команды чтоб скопировать, а таблица dbf при этом как должна выглядеть (она создана уже должна быть?)!


Спасибо заранее за ответ!
...
Рейтинг: 0 / 0
23.11.2009, 14:54
    #36326005
Ffffffffffffff
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с excel
Если нужен не фокспрошный dbf, то выделяешь в Экселе диапазон и далее:
Файл-Сохранить как - Внизу тип файлов (dBase...).
Может, этого хватит.
...
Рейтинг: 0 / 0
23.11.2009, 15:03
    #36326033
dima_18
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с excel
Ffffffffffffff , не мне нужен только foxпрошный dbf!
Я с ним буду работать потом! Так что мне нужен - только foxpro - вот в чем дело!
...
Рейтинг: 0 / 0
23.11.2009, 15:26
    #36326111
Dag
Dag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с excel
...
Рейтинг: 0 / 0
23.11.2009, 16:50
    #36326443
LUCIAN
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с excel
FfffffffffffffЕсли нужен не фокспрошный dbf, то выделяешь в Экселе диапазон и далее:
Файл-Сохранить как - Внизу тип файлов (dBase...).
Может, этого хватит.
Присоединяясь к выше сказанному ,я сохраняю в формате dBase4,при этом первая строчка идет в Dbf
как наименование полей.Далее имеется форма в которой идет 'перекодировка' этой таблицы и закачка
в формат VFP:
Код: plaintext
1.
2.
3.
4.
OST=RTRIM(THIS.Value) 
	DO (SYS( 2004 )+"TOOLS\CPZERO\CPZERO") WITH OST, 866 
SET SAFETY OFF
SELECT * FROM (OST) WHERE KOL# 0  INTO CURSOR CALDM
...
Рейтинг: 0 / 0
24.11.2009, 10:50
    #36327698
dima_18
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с excel
Добрый день, Всем!

Спасибо большое за ответы.
У меня вопрос к LUCIAN, спасибо за комментарии, но я не много опять не понял, извиняюсь. Я сделал так: создал пробный еселевский файл: proba.xls забил в него данные следующим образом:

A B
aaaa bbbbb
cccc ddddd
eeee ffffffff

потом нажал сохранить как: и как Вы сказали сохранил в формате dbase IV. Затем когда появилась таблица получилось немного непонятное:
название полей:
аааа bbbb

а содержимое их
cccc dddd
eeee ffffff
Т.е. нет еще одного содержимого -aaaa bbbb! - а оно попало как выше я указал в названия полей.
Я в принципе догадываюсь как сделать - просто сдвинуть на одно поле вниз. Я так понимаю? Второй вопрос: а программно можно как -то это сделать? Т.е. открываю файл екселевский заливаю все в таблицу dbase IV. Все это сделать программно можно как -то?
...
Рейтинг: 0 / 0
24.11.2009, 11:32
    #36327855
LUCIAN
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с excel
dima_18
Т.е. нет еще одного содержимого -aaaa bbbb! - а оно попало как выше я указал в названия полей.
Я в принципе догадываюсь как сделать - просто сдвинуть на одно поле вниз. Я так понимаю?
При сохранении в dbase4 1-строку с названиями полей не пометили выделением
dima_18
Второй вопрос: а программно можно как -то это сделать? Т.е. открываю файл екселевский заливаю все в таблицу dbase IV. Все это сделать программно можно как -то?
Можно,но для этого надо уметь переводить код макроса Excel в код VFP .кое что
тут
...
Рейтинг: 0 / 0
24.11.2009, 11:35
    #36327869
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с excel
> Автор: dima_18
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
Lparameters XLSheet As Excel.Worksheet, dbf_file_name As String
Local dbf_file_name1 As String, XLApp As Excel.Application
Try
 XLApp = XLSheet.Application
** Получили Ексель и открыли книгу с данными, теперь читаем данные в курсор
* Определяем используемый диапазон в книге
 #Define xlCellTypeLastCell  11 
 r = XLSheet.cells.SpecialCells(xlCellTypeLastCell)
 If r.Column <  14  Then
* Если столбец последней используемой ячейки меньше или не равен столбцу O, значит наших данных нет
* Поэтому проверяем по последнему обязательному столбцу
  nRetVal =  0 
 Else
* Получаем нужный диапазон в массив
* Читать начинаем с третей строки
  v = XLSheet.Range("B3:N" + Transform(r.Row)).Value
* Создаем курсор в который переносим данные из массива
  dbf_file_name1 = Sys( 2015 )
  Create Cursor (dbf_file_name)(B v( 50 ), C B( 3 ), D B( 3 ), E B( 3 ), F B( 3 ), G B( 3 ), H B( 3 ), I B( 3 ), ;
   J B( 3 ), K B( 3 ), L B( 3 ), M B( 3 ), N B( 3 ))
  Append From Array v
  Release v
.....
Часть функции читающей данные с листа. Передается лист с которого читать данные и имя курсора куда читать данные, курсор
создается в самой функции. Вызов такой:
Код: plaintext
This.ReadSheet(XLBook.Sheets("Лист1"), "cReadedData")

Это моя реализация, здесь недовставленна проверка прочитанного, обработка несовпадения прочитанного и обработка
возможных ошибок. О чем ни в коем случае нельзя забывать!

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
24.11.2009, 11:35
    #36327871
Помогите пожалуйста с excel
dima_18,

В простейших случаях может помочь
Код: plaintext
IMPORT FROM MyExcel.xls TYPE XL5
Экселевский файл должен быть в формате Excel 5.0/95
...
Рейтинг: 0 / 0
27.11.2009, 15:02
    #36335922
dima_18
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с excel
Всем большое спасибо за ответ! Извиняюсь, что сразу не поблагодарил всех - приболел немного! Буду разбираться!
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Помогите пожалуйста с excel / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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