【发布时间】: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