Как в Excel вызвать функцию из другой книги (проекта)?

Тема в разделе "Visual Basic", создана пользователем Captor, 18 дек 2008.

  1. Captor

    Captor Гость

    Имеется функция "Sub Заполнить_ячейку()" записанная в книге (проекте) prsonal.xls в модуле Module1. (Я там размещаю функции, которые должны быть доступны в разных книгах с похожим содержимым, чтобы иметь одну актуальную копию и чтобы не терялить их.) Но мне нужно чтобы из определенной книги (назовем ее Книга1.xls) она вызывалась двойным нажатием на ячейку.
    Я пишу в книге Книга1.xls обработчик события Sub Worksheet_BeforeDblClk(...) который порверяет какая это ячейка и вызыввает функцию (как это написано в помощи)
    [Prsonal.xls].[Module1].Заполнить_ячейку()
    Но выскакивает какая-то ошибка. типа "функция не определена".
    Что делать, может ее перед этим надо как-то загружать, или описывать?

    PS прошу прощения, что опускаю некоторые пододробности, под рукой Офиса нет, пишу о памяти, и с терминологией разобраться не могу, хелп скупой.
     
  2. Tanya

    Tanya Гость

    Код (Text):
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Dim b As Workbook

    If Target.Address = Cells(1, 1).Address Then
    On Error Resume Next
    Set b = Workbooks("Prsonal.xls")

    If Err Then
    Err.Clear
    Set b = Workbooks.Open("c:\temp\Prsonal.xls")
    Application.ActiveWindow.Visible = False
    End If
    On Error GoTo 0

    Call Run("Prsonal.xls!Заполнить_ячейку()")

    Set b = Nothing
    Cancel = True
    End If
    End Sub
     
Загрузка...

Поделиться этой страницей