Домашняя страница Undo Do Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Импорт данных формата EXCEL 4.0 в ACCESS 2010 - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, китин  
Импорт данных формата EXCEL 4.0 в ACCESS 2010
k-nick Дата: Воскресенье, 30.11.2014, 13:19 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Добрый день.

Встала задача: закачать данные из файлов формата EXCEL 4.0 в ACCESS 2010. Файлов много и они регулярно меняются, поэтому вариант "вручную преобразовать файлы к формату EXCEL 2010" не подходит. На сайте Мелкософта (http://support.microsoft.com/kb/141228) сказано: "Однако Microsoft Access не удается Импорт рабочих книг Microsoft Excel 4.0 ((.xlw))". Но я надеюсь, что ситуация не безнадежная. Как вариант: возможна ли конвертация файлов из одного формата EXCEL в другой с помощью командной строки (т.е. запускаешь EXCEL из командной строки, он выполняет конвертацию и закрывается) Или м.б. есть какой-то код VBA для ACCESS.
Буду благодарен за любые подсказки, советы, ссылки.
 
Ответить
СообщениеДобрый день.

Встала задача: закачать данные из файлов формата EXCEL 4.0 в ACCESS 2010. Файлов много и они регулярно меняются, поэтому вариант "вручную преобразовать файлы к формату EXCEL 2010" не подходит. На сайте Мелкософта (http://support.microsoft.com/kb/141228) сказано: "Однако Microsoft Access не удается Импорт рабочих книг Microsoft Excel 4.0 ((.xlw))". Но я надеюсь, что ситуация не безнадежная. Как вариант: возможна ли конвертация файлов из одного формата EXCEL в другой с помощью командной строки (т.е. запускаешь EXCEL из командной строки, он выполняет конвертацию и закрывается) Или м.б. есть какой-то код VBA для ACCESS.
Буду благодарен за любые подсказки, советы, ссылки.

Автор - k-nick
Дата добавления - 30.11.2014 в 13:19
Gustav Дата: Воскресенье, 30.11.2014, 14:34 | Сообщение № 2
Группа: Админы
Ранг: Участник клуба
Сообщений: 2808
Репутация: 1183 ±
Замечаний: ±

начинал с Excel 4.0, видел 2.1
Где, в каком "заповеднике", в 2014 году нашли в таком массовом количестве файлы версии 4.0?! :)

Не открывайте сразу Access'ом, откройте сначала Excel'ем и сохраните уже в современной версии Excel (xlsx). И вместо работы с командной строкой можно ж написать макрос в Excel (xlsm), который массово выполнит такое пересохранение или, если файлы 4.0 имеют данные одинаковой структуры, сразу соберет данные на общем листе. Потом с этого общего современного листа уже можно загрузить и в Access.


МОИ: Ник, Tip box: 41001663842605
 
Ответить
СообщениеГде, в каком "заповеднике", в 2014 году нашли в таком массовом количестве файлы версии 4.0?! :)

Не открывайте сразу Access'ом, откройте сначала Excel'ем и сохраните уже в современной версии Excel (xlsx). И вместо работы с командной строкой можно ж написать макрос в Excel (xlsm), который массово выполнит такое пересохранение или, если файлы 4.0 имеют данные одинаковой структуры, сразу соберет данные на общем листе. Потом с этого общего современного листа уже можно загрузить и в Access.

Автор - Gustav
Дата добавления - 30.11.2014 в 14:34
k-nick Дата: Воскресенье, 30.11.2014, 19:08 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Спасибо.

Нам эти файлы присылают из головного офиса в Москве. Не знаю, где они такое ПО выкопали.

Вариант с макросом - это интересно, я попробую. Но он мне не очень нравится тем, что нужно будет иметь дополнительный Excel-овский файл с макросом. Нет ли какого-нибудь более "технологичного варианта"?
 
Ответить
СообщениеСпасибо.

Нам эти файлы присылают из головного офиса в Москве. Не знаю, где они такое ПО выкопали.

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

Автор - k-nick
Дата добавления - 30.11.2014 в 19:08
RAN Дата: Воскресенье, 30.11.2014, 19:26 | Сообщение № 4
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Вставьте макрос в Access. Ему все равно, где жить. Но в Excel проще.


Быть или не быть, вот в чем загвоздка!

Сообщение отредактировал RAN - Воскресенье, 30.11.2014, 19:27
 
Ответить
СообщениеВставьте макрос в Access. Ему все равно, где жить. Но в Excel проще.

Автор - RAN
Дата добавления - 30.11.2014 в 19:26
Gustav Дата: Понедельник, 01.12.2014, 00:27 | Сообщение № 5
Группа: Админы
Ранг: Участник клуба
Сообщений: 2808
Репутация: 1183 ±
Замечаний: ±

начинал с Excel 4.0, видел 2.1
Нет ли какого-нибудь более "технологичного варианта"?

Ну, как сами говорите, можно через командную строку попробовать. Только не Excel запускать, а файл с VB-скриптом, внутри которого запускается Excel.

Содержимое файла convert40.vbs может быть таким:
[vba]
Код
Set xlApp = CreateObject("Excel.Application")
Set wbk = xlApp.Workbooks.Open(WScript.Arguments(0))
wbk.SaveAs Replace(Replace(wbk.FullName, ".xls", ".xlsx"), ".xlw", ".xlsx"), 51
wbk.Close False
xlApp.Quit
[/vba]
Командная строка: convert40.vbs C:\Папка1\Папка2\файл.xlw . В результате работы скрипта должен будет создаться файл C:\Папка1\Папка2\файл.xlsx.

P.S. А следующий скрипт можно натравить сразу на целую папку с файлами для конвертации - файл cnv40mas.vbs:
[vba]
Код
Set xlApp = CreateObject("Excel.Application")
Set files = CreateObject("Scripting.FileSystemObject").GetFolder(WScript.Arguments(0)).Files
For Each file in files
     If InStr(file.Type, "Excel") Then
        Set wbk = xlApp.Workbooks.Open(file.Path)
        wbk.SaveAs Replace(Replace(wbk.FullName, ".xls", ".xlsx"), ".xlw", ".xlsx"), 51
        wbk.Close False
        Set wbk = Nothing
     End If  
Next  
xlApp.Quit
Set xlApp = Nothing
[/vba]
Командная строка: cnv40mas.vbs C:\Папка1\Папка2\ . В результате работы скрипта в папке появятся одноименные файлы *.xlsx.


МОИ: Ник, Tip box: 41001663842605

Сообщение отредактировал Gustav - Понедельник, 01.12.2014, 12:16
 
Ответить
Сообщение
Нет ли какого-нибудь более "технологичного варианта"?

Ну, как сами говорите, можно через командную строку попробовать. Только не Excel запускать, а файл с VB-скриптом, внутри которого запускается Excel.

Содержимое файла convert40.vbs может быть таким:
[vba]
Код
Set xlApp = CreateObject("Excel.Application")
Set wbk = xlApp.Workbooks.Open(WScript.Arguments(0))
wbk.SaveAs Replace(Replace(wbk.FullName, ".xls", ".xlsx"), ".xlw", ".xlsx"), 51
wbk.Close False
xlApp.Quit
[/vba]
Командная строка: convert40.vbs C:\Папка1\Папка2\файл.xlw . В результате работы скрипта должен будет создаться файл C:\Папка1\Папка2\файл.xlsx.

P.S. А следующий скрипт можно натравить сразу на целую папку с файлами для конвертации - файл cnv40mas.vbs:
[vba]
Код
Set xlApp = CreateObject("Excel.Application")
Set files = CreateObject("Scripting.FileSystemObject").GetFolder(WScript.Arguments(0)).Files
For Each file in files
     If InStr(file.Type, "Excel") Then
        Set wbk = xlApp.Workbooks.Open(file.Path)
        wbk.SaveAs Replace(Replace(wbk.FullName, ".xls", ".xlsx"), ".xlw", ".xlsx"), 51
        wbk.Close False
        Set wbk = Nothing
     End If  
Next  
xlApp.Quit
Set xlApp = Nothing
[/vba]
Командная строка: cnv40mas.vbs C:\Папка1\Папка2\ . В результате работы скрипта в папке появятся одноименные файлы *.xlsx.

Автор - Gustav
Дата добавления - 01.12.2014 в 00:27
k-nick Дата: Понедельник, 01.12.2014, 14:46 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
О! Большое спасибо!
Первый скрипт замечательно выполняется прямо в Access.
Этот вариант вполне меня устраивает.
Еще раз - огромное спасибо.
 
Ответить
СообщениеО! Большое спасибо!
Первый скрипт замечательно выполняется прямо в Access.
Этот вариант вполне меня устраивает.
Еще раз - огромное спасибо.

Автор - k-nick
Дата добавления - 01.12.2014 в 14:46
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!