【问题标题】:Alternative command (ActiveSheet)替代命令 (ActiveSheet)
【发布时间】:2017-12-22 07:52:42
【问题描述】:

有一个用户定义函数(UDF),它位于工作簿的所有工作表上。

如何参考函数所在的工作表?

我正在使用ThisWorkbook.ActiveSheet,但结果不断变化。

Function äëÿñèò(Diapozon As Range) As Long
      'äëÿ ñèòóàöèè
    Application.Volatile
    Dim n As Long
    Dim C As Range
    Dim m As Long

    m = -1
    n = 0
    For Each C In Diapozon.Rows

    If C.Value = 1 Then
     m = m + 1
    If ThisWorkbook.ActiveSheet.Cells(101, 42 + (m * 21)).Value = 1 Then
    n = n + 1
    End If
    End If
    Next C

    äëÿñèò = n
End Function

【问题讨论】:

    标签: vba excel user-defined-functions worksheet


    【解决方案1】:

    您可以使用Application.Caller 来引用正在调用该函数的单元格,因此您可以使用Application.Caller.Worksheet 来引用该单元格的工作表。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-10-08
      • 1970-01-01
      • 1970-01-01
      • 2018-08-05
      • 1970-01-01
      • 2012-09-03
      • 2013-02-08
      • 2013-03-14
      相关资源
      最近更新 更多