Запуск процедуры по имени с передачей ей параметров - VB

Узнай цену своей работы

Формулировка задачи:

Хочу запускать процедуру по ее имени с передачей ей параметров Пробую в Excel : метод App.Evaluate - вызывает двойное срабатывание процедуры и не передает объекты . Дальше пробую хоть в Excel , хоть в Vb ScriptControl методы .Run , ExecuteStatement , Eval - ничего не получается с вызовом процедуры - только выражения считает. Еще есть для VB фишка (наиболее мощная как показывает ее работоа под Vb6) : Private Declare Function EbExecuteLine Lib 'vba6.dll' (ByVal pStringToExec As Long, ByVal Foo1 As Long, ByVal Foo2 As Long, ByVal fCheckOnly As Long) As Long Но она работает только для Vb , а нужно для Excel (для Excel она сваливается под Win2K).

Решение задачи: «Запуск процедуры по имени с передачей ей параметров»

textual
Листинг программы
Sub TEST()
    CallByName ThisWorkbook, 'ECHO', VbMethod, 'Vasya'
End Sub
'
Sub ECHO(ByVal arg As String)
    MsgBox 'Hello, ' + arg + '!!!'
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.357 из 5