Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: нужно в vba использовать сервис->Связи с Microsoft office->анализ в excel
 
 автор: ludmil   (22.06.2010 в 22:41)   личное сообщение
 
 

как правильно написать? а нормально передать в excel получfется только переходом по меню для пользователей это- не удобно....нашла решение у Прусса

  Ответить  
 
 автор: snipe   (23.06.2010 в 06:25)   личное сообщение
 
 

Почитайте про

DoCmd.OutputTo
и
DoCmd.TransferSpreadsheet

вот еще интересная ссылочка
http://zmey.1977.ru/Access_To_Excel_Ru.htm

если не захотите почитать
то в редакторе макросов разберите команды
ВывестиВФормате
и
ПреобразоватьЭлектроннуюТаблицу

  Ответить  
 
 автор: ludmil   (23.06.2010 в 16:43)   личное сообщение
 
 

я так и делала но при использовании предложенных вариантов не высвечивался файл excel приходится его открывать я делала как у ПРУССа
CurrentDb.QueryDefs("Bolvanka").SQL = strSQL
DoCmd.OutputTo acOutputQuery, "Bolvanka", acFormatXLS, "C:\Test.xls" и потом добавила из примера
str_pr = "Excel.exe " & "C:\test"
str_pr = "Excel.exe " & "C:\test"
retval = Shell(str_pr, 1)
Call GetActiveWindow
ВСе работает высвечивается но еще хотелось бы заменить назнания полей в полученном запросе после того как он сформирован - уже рабоать с листом Excel и тут опять плохо получается нет ли блока работы с листом нужно корректировать только заголовок на первом листе ...Как до высвечивания сделать изменения в созданном файле excel. Т.е. открыть и выполнить макрос (замена верхней строки заголовков) Макрос я создала непосредственно в excel и хочу его перенести в access в этот же блок чтобы пользователь уже увидел офрматированный лист с нормальными заголовками размерами столбцов и т.д.

  Ответить  
 
 автор: snipe   (23.06.2010 в 18:04)   личное сообщение
 
 

ну - поскольку вы и изначально меняете текст запроса
то почему бы в Selecte не писать вот так
SELECT Таблица1.дата AS [Поступление На Дату]
FROM Таблица1;

см строку Select - выводиться будет столбец с названием Поступление На Дату хотя данные находятся в поле дата
(и так для каждого столбца)

метод docmd.outputto лично мне не нравится - инфу выводит в формате ексель 95 (это из под VBA
- справедливости ради - макрос выводит в формате ексель97-2000)
посему применяю другой способ DoCmd.TransferSpreadsheet

для того что бы подцепиться к екселю надо использовать другой метод - CreateObject или GetObject - далее использовать Ваш макрос (написанный в екселе) - немного переделав

  Ответить  
 
 автор: Explorer   (23.06.2010 в 18:14)   личное сообщение
68 Кб.
 
 

ну вообще-то в самом Excel есть функции подключения к внешним БД

это может оказаться гораздо удобнее ==>>

  Ответить  
 
 автор: ludmil   (23.06.2010 в 19:14)   личное сообщение
 
 

Спасибо! Получилось. с заменой заголовков.Теперь попробую вставить макрос в access

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList