|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
tor_shift, можешь еще сохранить файл Excel в формате dbf3 (если Excel 2007 не позволяет этого сделать, то сначала в формате Excel 2003, потом на другом компьютере с Excel 2003 в формате dbf3). Файл формата dbf3 Foxpro открывает, только кодовую страницу надо указать правильную. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2011, 16:18 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
ВладимирМ, Просмотрите ещё раз пожалуйста мои файлы,только мысленно как бы отбросьте эти точки(...). Представьте что числовые значения по столбцу NUMLS повторяются(изначально так построена структура таблицы Excel,кот.нужно переконвертировать в dbf),они также повторяются и в готовой "таблице" dbf(foxpro 5.0), но проблема с столбцом SH1 в уже преобразованной таблице dbf. В некоторых ячейках данные неправильные.( к примеру таблица в Excel NUMLS NUMSH SH1 .. .. .. MESTO . 38414 161.000 38414 145.000 . . 38421 3.000 <<<<<< 38421 1.000 <<<<<<обратите внимание . . 38426 1.233 после преобразования и просмотра через Фокса: NUMLS NUMSH SH1 .. .. .. MESTO . 38414 161.000 38414 145.000 . . 38421 36586.0 <<<<<<<обратите внимание 38421 36526.0 <<<<<<< . . 38426 1.233 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2011, 16:27 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
Ffffffffffffffffffffffffffff, На машине установлен excel 2007. И проблемно будет для сотрудниц переходить на другой эксел,они не смогут. Сделал для удобства даже кнопочку пожилым работницам для превода в dbf,а что-то пошло не так... ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2011, 16:36 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
Сделайте просто "тупо" сохранение данных из Excel в формате CSV. И посмотрите этот тектовый файл, что там получается. А в FoxPro импортируйте, как показано в моём посте... НЕ НАДО формировать таблицу Фокса средствами Excel... ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2011, 17:01 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
AndreTM, Можно так: Закинуть данные (и только данные, безо всяких описаний и заголовков) на отдельный лист, Сохранить этот лист в формате CSV. Затем Запустить Фокс, Открыть таблицу - и добавить в неё записи из текстового файла (Table-Append Record...) Я охранил файл excel с расширением csv для Dos. Я запустил Фокс,далее я не нахожу,указанных Вами пунктов. Попробовал так File-->Open-->мой файл csv-->ok Открылось окно с перечисленными записями через точку с запятой: 38414;1234522344778;161.000;;е;б 38414;5784833322333;145.000;;Ј;б 38421;16723839405064;3.000;;е;б 38421;53435465677232;1.000;;е;Є 38426;41456238594954;;;е;ў Пробовал сделать Import-->type Microsoft Excel 5.0 and 97 (XLS)-->from мой файл csv-->ok--> Появляется сообщение: Microsoft Excel file format is invalid. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2011, 18:17 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
tor_shiftВладимирМ, Просмотрите ещё раз пожалуйста мои файлы,только мысленно как бы отбросьте эти точки(...). Представьте что числовые значения по столбцу NUMLS повторяются(изначально так построена структура таблицы Excel,кот.нужно переконвертировать в dbf),они также повторяются и в готовой "таблице" dbf(foxpro 5.0), но проблема с столбцом SH1 в уже преобразованной таблице dbf. В некоторых ячейках данные неправильные.( к примеру таблица в Excel NUMLS NUMSH SH1 .. .. .. MESTO . 38414 161.000 38414 145.000 . . 38421 3.000 <<<<<< 38421 1.000 <<<<<<обратите внимание . . 38426 1.233 после преобразования и просмотра через Фокса: NUMLS NUMSH SH1 .. .. .. MESTO . 38414 161.000 38414 145.000 . . 38421 36586.0 <<<<<<<обратите внимание 38421 36526.0 <<<<<<< . . 38426 1.233 Посмотрите, все-таки, пример автора кода по преобразованию содержимого Excel в DBF. У него в примере используется в качестве символа-разделителя - запятая. Точнее, тот символ, который указан как символ-разделитель целой и дробной части в том экземпляре Excel, где Вы этот код и запускаете. У Вас же в качестве символа разделителя выступает точка. Понимаете, конвертацией в формат DBF занимается сам Excel. Поэтому, данные в самом Excel должны быть в таком формате, чтобы не было разночтений в том, что Вы хотите получить в DBF и в том, что у Вас есть в Excel. Это именно Excel таким образом выполнил преобразование. Если Вы указываете, что поле SH1 должно быть числовое, то и в Excel этот столбец должен быть отформатирован как числовой. И разделитель целой и дробной части должен быть такой же, как в Excel. Повторю еще раз. Все проблемы связаны с тем, как данные отформатированы в самом Excel. Если Вы сможете понять макрос Excel, то преобразованием там занимается вот этот метод Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
По сути, преобразование в числовое значение выполняет внутренняя функция Excel с именем format(). Вот у этой функции и "сносит крышу", когда она пытается преобразовать в число явную символьную строку. Во что она это преобразует, заранее сказать невозможно. Как только Вы вместо "3.00" напишете "3,00" (т.е. просто вместо точки укажите запятую), то все встает на место. Нет, ну можно, конечно, модифицировать функцию преобразования в числовое значение следующим образом Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Только это до тех пор, пока вместо символа-разделителя целой и дробной части не окажется, к примеру, дефис ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2011, 20:09 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
tor_shiftЯ охранил файл excel с расширением csv для Dos. Я запустил Фокс,далее я не нахожу,указанных Вами пунктов.Откройте таблицу NewFile.dbf - и вы увидите появившийся пунктик меню "Table"... А вообще, я же говорил о том, что после запуска FoxPro вам достаточно выполнить хотя бы в командном окне три строчки кода. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2011, 21:08 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
[quot ВладимирМ]tor_shiftВладимирМ, Нет, ну можно, конечно, модифицировать функцию преобразования в числовое значение следующим образом Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Скажите пожалуйста,как можно подправить функцию ValToDBF и можно ли поставить дополнительную строку в ValToDBF: Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2011, 21:47 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
AndreTM, Так это в командной строке нужно прописывать. Я не сразу понял,извините ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2011, 22:01 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
tor_shift Скажите пожалуйста,как можно подправить функцию ValToDBF и можно ли поставить дополнительную строку в ValToDBF: Код: plaintext
А кто мешает попробовать? Только следует иметь в виду, что данная модификация повлияет на ВСЕ поля, которые должны быть числовыми. А Вы уверены, что Вам никогда не понадобятся отрицательные числа? Как собираетесь отличать минус от дефиса, как символа-разделителя? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2011, 23:02 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
ВладимирМ, Вроде работает. А как быть к примеру с преобразованием дат,подскажите? К примеру нужно будет добавить столбец с датами,как с ними работать? В excel формат 04.03.2011, а в fox'е если не ошибаюсь 04-03-2011 или не обязательно в таком формате как 04-03-2011? Впринципе,я уже попробовал с датами типа 04.03.2011 для экселя и переводится они на формат 04/03/2011 в foxe. Как Вы думаете это допустимый стандарт? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2011, 23:22 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
ВладимирМ, Можно ли при составлении таблицы Excel указать для позиций,расположенных под наименованием NUMSH,тип Дополнительный-->Табельный номер? Табельный номер относится к char типу данных или всё-таки нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2011, 23:29 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
tor_shiftА как быть к примеру с преобразованием дат,подскажите? К примеру нужно будет добавить столбец с датами,как с ними работать? В excel формат 04.03.2011, а в fox'е если не ошибаюсь 04-03-2011 или не обязательно в таком формате как 04-03-2011? Впринципе,я уже попробовал с датами типа 04.03.2011 для экселя и переводится они на формат 04/03/2011 в foxe. Как Вы думаете это допустимый стандарт? То, как данные хранятся "внутри" Excel или DBF, не есть то, как они отображаются. Для начала настройте формат отображения дат в FoxPro. Это пункт меню Tools \ Options \ закладка Regional \ в поле "Date Format" установите значение "German" Это тот формат отображения дат, который принят у нас ДД.ММ.ГГГГ А физический способ хранения дат в DBF-таблицах всегда один и тот же и ни от каких способов отображения не зависит. Правильность перевода целиком и полностью на стороне Excel. Если Excel сумеет понять, что в ячейке записана дата (не важно в каком формате), то и в DBF дата попадет "как надо". tor_shiftМожно ли при составлении таблицы Excel указать для позиций,расположенных под наименованием NUMSH,тип Дополнительный-->Табельный номер? Табельный номер относится к char типу данных или всё-таки нет? У Вас же есть описание как, где и что указывать в файле Excel, чтобы получился корректный файл DBF. Вот, в соответствии с инструкцией, и располагайте. Если Вы хотите добавить к английскому имени поля некое описание по русски, то для "голого" DBF это невозможно. Внутри файла DBF просто нет места для хранения подобных описаний. Форматом файла не предусмотрено. В Visual FoxPro подобное возможно только для таблиц, включенных в контейнер базы данных. Но данный код не предполагает создание такого контейнера. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2011, 00:19 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
ВладимирМ, я располагал как раз в соответствии с инструкцией. Но когда я указываю в excel тип значений для NUMSH,данные меняются на 16ричный формат. В таком формате операторы не смогут заносить данные,как же быть тогда? Я сегодня объяснял как использовать кнопку и так скажем шапку таблицы при формировании документа dbf,много возмушения услышал)) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2011, 00:32 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
tor_shiftя располагал как раз в соответствии с инструкцией. Но когда я указываю в excel тип значений для NUMSH,данные меняются на 16ричный формат. В таком формате операторы не смогут заносить данные,как же быть тогда? У Вас NUMSH - это текстовое поле. Вот и укажите в Excel формат столбца как "Текстовый". Потом укажите тип столбца и еще раз проверьте, что формат столбца остался "Текстовый". Дело в том, что если формат ячейки в Excel оставлен в значении по умолчанию как "Общий", то Excel, сам, в силу своего понимания, пытается определить, какой тип данных записан в ячейке. Ну, а раз у Вас там одни цифры, вот он и предполагает, что это число. Соответственно его и конвертирует. Ну, а то, что числа отображаются в научном (16-ричный - это совсем другое) формате объясняется ограничением уже формата отображения числовых данных. В общем, в данном случае, Excel "слишком умный". PS: Надеюсь, Вы знаете как установить формат всех ячеек одного столбца Excel? Надо щелкнуть по заголовку столбца левой клавишей мыши. После того, как столбец окажется выделенным, щелкнуть по тому же заголовку, но уже правой клавишей мыши. В открывшемся меню выбрать пункт "Формат ячейки" и выбрать "Текстовый" ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2011, 00:49 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
ВладимирМ, Спасибо Вам. Всё вроде сегодня объяснил на счёт типов данных и запятых. Файл сформировали,в главном офисе дали добро ) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2011, 11:00 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
AndreTM, Спасибо за помощь. Взял всё-таки версию Excel,тк работать с ней нужно будет оператору. Оператор сильно привык к экселю и ему сложно будет перестроится на Фокс. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2011, 11:04 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
PaulWist, Я пробовал сделать Ваш вариант. Сохранил эксел файл как Книга Excel поместил в корень С:\. Ввёл в консоли код,указал имя файла,оставил русскую локаль,запустил на исполнение клавишей enter. Появилось сообщение о переменной gn: variable 'GN' is not found. Что не правильно делаю подскажите пожалуйста? Просто хочу побольше разобраться с Фоксом. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2011, 12:13 |
|
Экспорт данных из Excel в Visual FoxPro(dbf-файл).
|
|||
---|---|---|---|
#18+
быть умным бывает вредно.... Вот ссылка на конвертер из excel в dbf бесплатная версия преобразовывает 50 записей но если купите будет преобразов. все ) Удачи http://www.whitetown.com/ru/xls2dbf/ ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2014, 16:04 |
|
|
start [/forum/topic.php?fid=41&startmsg=37149408&tid=1582239]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
119ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 222ms |
0 / 0 |