Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Запуск процедуры в Excel из Access / 6 сообщений из 6, страница 1 из 1
01.10.2011, 16:08
    #37463935
QWERiON
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск процедуры в Excel из Access
Здравствуйте. Проблемка:
Написал простенькую процедурку в Excel
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Public Sub MacCross(i1 As Integer, j1 As Integer, i2 As Integer, j2 As Integer)

Range(Cells(i1, j1), Cells(i2, j2)).Select
  
   Selection.Borders(xlEdgeLeft).LineStyle = xlContinuous
   Selection.Borders(xlEdgeTop).LineStyle = xlContinuous
   Selection.Borders(xlEdgeBottom).LineStyle = xlContinuous
    Selection.Borders(xlEdgeRight).LineStyle = xlContinuous
    Selection.Borders(xlInsideVertical).LineStyle = xlContinuous
     Selection.Borders(xlInsideHorizontal).LineStyle = xlContinuous
  
End Sub
Запускаю в Excel в окошке Immediate запускается. рисует сетку как и положено
В списке макросов данной процедуры нет.

теперь пытаюсь запустить данную процедуру из Access для форматирования формируемого файла
Run ("MacCross 3,9," & k & "," & i & "")
Выдается ошибка (см.вложенную картинку)

Скопировав функционал процедуры в акцесс мне таки удалось добиться разлиновки..
Но теперь у меня задача закрасить часть ячеек линейнымградиентом.. а он из Access закрашивает както криво.
Если удастся разобраться с запуском параметрических процедур , то я быстренько оформлю свой градиент в екселе и все будет хорошо )

Может кто сталкивался с подобной проблемой? по сути нужна шапка процедуры в Excel и строка запуска из Access
...
Рейтинг: 0 / 0
01.10.2011, 16:47
    #37463951
QWERiON
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск процедуры в Excel из Access
C градиентами разобрался.

Но вопрос вынесенный в шапку остается открытым.

Есть непараметрический макрос
Код: plaintext
1.
2.
3.
4.
Public Sub Mac4()
fillRan "c20:M20",  0 ,  1 
fillRan "c21:M21",  0 ,  3 
fillRan "c22:M22",  0 ,  2 
End Sub

и он из Access запускается на ура
Код: plaintext
 .Run ("mac4")
а идущая за ним или перед ним строчка с параметрической процедурой
Код: plaintext
.Run ("MacCross 3,9," & k & "," & i & "")
перепробовал и со скобками и без скобок, все равно выдает ошибку
Так что все ошибки связанные с неподключением справочника, документа и прочего отпадают.
...
Рейтинг: 0 / 0
01.10.2011, 17:05
    #37463960
QWERiON
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск процедуры в Excel из Access
Вообщем правильный запуск
Код: plaintext
.Run "MacCross",  3 ,  9 , k, i
Вопрос снят. Всем спасибо.
...
Рейтинг: 0 / 0
01.10.2011, 19:21
    #37464049
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск процедуры в Excel из Access
Ага.
В любом "Пособии для начинающих" по VBA это напИсано.
То, что параметры вызываются "в скобках" либо только для функций, либо при явном использовании CALL.

Да, и еще - не стОит использовать .select/selection. Да и перечислять все индексы границ - смысла нет, достаточно:
Код: plaintext
Range(Cells(i1, j1), Cells(i2, j2)).Borders.LineStyle = xlContinuous
...
Рейтинг: 0 / 0
01.10.2011, 19:23
    #37464050
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск процедуры в Excel из Access
А, да. Немного первый вопрос недопонял.
Там, видимо, неправильное использование .Run было (по поводу того, что параметры вызываемого макроса перечисляются как параметры самого Run)...
...
Рейтинг: 0 / 0
01.10.2011, 22:26
    #37464105
QWERiON
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск процедуры в Excel из Access
AndreTM, огромное спасибо за информацию. Все стало намного симпатичнее и проще.
Переписал все скрипты в файлике без селектов.
А Процедура с бордерами сократилась до одной строчки, что не может не радовать :)
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Запуск процедуры в Excel из Access / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]