|
|
|
| Коллеги, Добрый день!
У меня возникла проблемка,есть форма, в которой есть одно или несколько полей и нужно из них данные, перенести в Excel. Смотрел старые темы, но в новом Access-2007, те советы у меня применить не получается. Алгоритм я вижу так. Берется поле(как его взять?), присваивается переменной. Открываем Excel, выбираем ячейку и вставляем данные. Потом очищаем буфер(как это сделать?)
Shell "C:\Program Files\Microsoft Office\Office12\excel.exe e:\1.xls", vbMaximizedFocus Так я открываю таблицу. Range("C22").Select ActiveSheet.Paste Подскажите, пожалуйста, как передать переменной данные из поля5, и вообще что я делаю не так. И еще посоветуйте, пожалуйста, книгу, в которой есть все эти команды | |
|
| |
|
|
|
| Почему Shell? почему не использовать OLE? | |
|
| |
|
|
|
| я просто не знаю. Это я где то подглядел. Если не трудно скажи, как? | |
|
| |
|
|
|
| http://hiprog.com/forum/read.php?id_forum=1&id_theme=3587&page=1 | |
|
| |
|
|
|
| спасибо, буду разбираться | |
|
| |
|
|
|
| Set db = CurrentDb
Set xl = CreateObject("Excel.Application")
Set xlb = xl.Workbooks.Add
Set xls = xlb.Worksheets(1)
xl.Visible = True
Set rs = db.OpenRecordset("фио")
xls.Range("a1").CopyFromRecordset rs
Вот что у меня получилось. Но он печатает всю таблицу, а мне нужно только одно поле. Подскажите, в чем здесь ошибка? | |
|
| |
|
|
|
| Set rs = db.OpenRecordset("фио")
а фио - это таблица?
Сделайте запрос - на один столбец "Ф_И_О"
Set rs = db.OpenRecordset("Ф_И_О") | |
|
| |
|
|
|
| Есть база "клиенты". Есть поле "паспорт" из которого, с помощью формулы я забираю серию, номер, кем и когда выдан и эти данные отправляю все это в Excel, в разные я чейки. | |
|
| |
|
|
|
| Ну тогда -
Цикл по рекордсет(у)
от первой записи до последней.........
когда формулой выуживаете данные - можете сохранить их (данные) в переменных
а затем передать в разные ячейки
(а) = фио
(б) = серия
.......................
Затем очистить переменные и повторить цикл до конца рекордсет(а) | |
|
| |
|
|
|
| а как присвоить?
я ввожу как в VB,
Dim a
a = поле5
но это не правильно | |
|
| |
|
|
|
| Это не правильно.............
Вы про DAO или ADO в курсе? | |
|
| |
|
|
|
| если честно, то нет. Я работал с VB, решил попробывать с VBA, думал что тоже самое. Ан нет. Со временем, конечно разберусь, но сейчас встал острый вопрос, по поводу присвоения переменным данных из поля в Access и переноса их в Excel. В Excel там, Range это я нашел. А вот как в Access, пока не нашел. Если не трудно подскажите. И посоветуйте, пожалуйста, книгу.Сейчас читаю, книгу: Л. А. Демидова, А. Н. Пылькин - Программирование в среде VBA | |
|
| |
|
|
|
| вообщем всем, спасибо. Уже почти, разобрался. | |
|
| |