excel2access(скрипт)

Программирование на Visual Basic for Applications
eXRay
Новичок
Новичок
 
Сообщения: 32
Зарегистрирован: 09.05.2004 (Вс) 0:58
Откуда: Россия, Москва

excel2access(скрипт)

Сообщение eXRay » 09.01.2005 (Вс) 21:02

постараюсь объяснить что нужно...

есть xls-файл(не один, а много), в которых хранятся данные в виде таблицы...

нужно брать эти данные и записывать в mdb-файл...

как написать эту прогу в виде отдельного скрипта?

З.Ы. т.е. если бы был один файл, то можно было бы писать прям в нем, а тут файлы все время новые появляются...

SergeySV2
Новичок
Новичок
 
Сообщения: 33
Зарегистрирован: 06.01.2005 (Чт) 22:06

Re: excel2access(скрипт)

Сообщение SergeySV2 » 09.01.2005 (Вс) 22:08

У тебя помойму изначально идет неправильный уклон, кажется ты хочешь запихнуть VB-код именно в файл-xls

В принципе и это конечно возможно, вернее используя COM технологию на самом деле почти все равно где писать: в Excel'е, в Access'е, в VB6 или даже в Word'е. Выбор просто в удобстве и в быстроте - родные методы проще вызвать и быстрее работают.

Конкретно про твою задачу - логичнее запихнуть код в саму базу mdb (Access), наконец можно запихнуть код в персональную книгу макросов Personal.xls и он будет доступен всегда в Excel'е, наконец все это омжно написать в VB6, в виде exe-файла и запускать его...

eXRay
Новичок
Новичок
 
Сообщения: 32
Зарегистрирован: 09.05.2004 (Вс) 0:58
Откуда: Россия, Москва

Сообщение eXRay » 09.01.2005 (Вс) 22:43

я как раз и не хочу запихивать в xls!

так, а как когда обращаться к экселю из акцесса, если писать код в акцессе?

SergeySV2
Новичок
Новичок
 
Сообщения: 33
Зарегистрирован: 06.01.2005 (Чт) 22:06

Сообщение SergeySV2 » 09.01.2005 (Вс) 23:23

Тебе нужны функции: CreateObject/GetObject. В зависимости от аргументов GetObject может выполнять функции CreateObject, например такой код:

Dim xlApp As Object

Set xlApp = GetObject("", "Excel.Application")

удобен тем, что если нет запущеннего Excel'я, то он загрузит его, а если уже запущен, то присоединиться к уже запущенному екземпляру.

Про сами функции, можешь прочитать справку или поиск по форуму.

P.S. Да, совсем забыл, на самом деле тебе не нужен доступ к Excel'ю. Тебе же надо только импортировать данные из xls-файла в mdb, а для этого у Access есть свой готовый метод DoCmd.TransferSpreadsheet...

eXRay
Новичок
Новичок
 
Сообщения: 32
Зарегистрирован: 09.05.2004 (Вс) 0:58
Откуда: Россия, Москва

Сообщение eXRay » 10.01.2005 (Пн) 0:24

SergeySV2 писал(а):P.S. Да, совсем забыл, на самом деле тебе не нужен доступ к Excel'ю. Тебе же надо только импортировать данные из xls-файла в mdb, а для этого у Access есть свой готовый метод DoCmd.TransferSpreadsheet...


замечательно, сейчас буду пробовать! спасибо!!!

eXRay
Новичок
Новичок
 
Сообщения: 32
Зарегистрирован: 09.05.2004 (Вс) 0:58
Откуда: Россия, Москва

Сообщение eXRay » 10.01.2005 (Пн) 0:34

а как бы все-таки именно из экселя писать в БД?


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 57

    TopList