【问题标题】:UDF function doesn't show the resultUDF 函数不显示结果
【发布时间】:2021-09-29 09:32:46
【问题描述】:

大家好,这可能吗?

这个功能有什么问题。 z 变量不显示结果。

Function Translate_H() As String
Worksheets("Dictionary").Activate
Dim O As Integer
Dim z As String
Dim Position_V2 As String
For O = 14 To 16
Position_V2 = Worksheets("Home").Cells(O + 1, 6).Address
Next O
Worksheets("Dictionary").Activate
z = WorksheetFunction.VLookup(Position_V2, Worksheets("Dictionary").Range("$A$48:$AL$50"), 3, 0)

'Application.Volatile
'WorksheetFunction.Match(2, Worksheets("Dictionary").Range("$B$1:$AL$1"), 0) + 1, 0)

Translate_H = z
Application.Volatile
End Function

【问题讨论】:

  • 为什么是 FOR 循环?这有什么作用?
  • @Siddharth Rout 你好。因为我需要一个与查找值相关的通用函数。我想将此 Translate_H 函数用作公式栏函数的一部分作为动态通用函数。因此,如果我在 F15、F16、F17 单元格中使用,它必须给出不同的结果。有一个列表,我可以在其中查找。但我想在另一张纸上使用它。
  • 您的意思是您希望单元格F15 中的=Translate_H() 为单元格F16 中的=Translate_H() 提供不同的结果。字典表上的范围A48:A50 是否包含字符串$F$15,$F$16,$F$17
  • 我的意思是 FOR 循环是无用的,因为Position_V2 的值总是会从Worksheets("Home").Cells(16 + 1, 6).Address 中获取。以前的值将被覆盖...
  • @CDP1802 是的。在字典表上有一个列表,在“A”列+单词中包含来自家庭表的地址。我会在主页表上的 3 个单元格中使用 1 个通用功能。在 F15、F16、F17 中。在这种情况下,vba 部分将在字典表中查找 F15 查找值并给出一些结果。在位置 F16 它将寻找 F16 值。这是计划,但也欢迎其他解决方案。

标签: excel vba function user-defined-functions


【解决方案1】:

你需要给你的函数添加一个参数。然后在F15:F17 中用作=Translate_H(ROW())

Function Translate_H(r As Long) As String
    
    Dim Position_V2 As String, rngLookUp As Range
    Set rngLookUp = Worksheets("Dictionary").Range("A48:AL50")
    Position_V2 = Worksheets("Home").Range("F" & r).Address
    
    Translate_H = WorksheetFunction.VLookup(Position_V2, rngLookUp, 3, 0)
    Application.Volatile

End Function

【讨论】:

  • #CDP1802 thx 但它没有显示任何结果。您的代码中的 r 是什么,它是如何定义的?
  • @Zsolt 你在 F15:F17 中使用了什么公式
  • dear 用于 translate_H 的每个组合。比如:Tranlste_H()、translate(row())、translate(row(F15))。我想我将使用技术行并使用简单的查找。在我看来,我想要什么是不可能的,或者没有人理解真正的问题。 (我有 2 张表) 表 1 名称:“字典”,表 2:“主页” 我需要“主页”表上的 tranlsate_H 函数来从“字典”中获取数据,但在主页上我想在单元格 F15 中使用相同的功能- F16, F17 不改变查找值。
  • @Zsolt 创建一个测试子并单步执行它Sub test() MsgBox Translate_H(15) End Sub
  • 嘿。也许我错了,但该功能的工作方式与 sub 有点不同。我需要能完美发挥功能的东西。
猜你喜欢
  • 2021-02-23
  • 1970-01-01
  • 2021-06-16
  • 2017-10-19
  • 1970-01-01
  • 1970-01-01
  • 2021-01-16
  • 1970-01-01
  • 2013-12-29
相关资源
最近更新 更多