【问题标题】:Trying to Start a function causes Runtime Error 424尝试启动函数会导致运行时错误 424
【发布时间】:2018-02-25 04:22:23
【问题描述】:

我正在尝试启动以下功能

Function MitteOben(Bereich As Range)

    With Bereich
        .VerticalAlignment = xlTop
        .HorizontalAlignment = xlCenter
    End With

    With Bereich.Font
        .Name = "Tahoma"
        .Size = 10
        .ThemeColor = xlThemeColorLight1
    End With

End Function

当我尝试定义一个范围并启动函数时,它会创建运行时错误 424。

我正在尝试以这种方式开始:

Set Hlpr = Range(Cells(ObjStartRow, 14), Cells(ObjStartRow, 28))
MitteOben (Hlpr)
Fett (Hlpr)

我也尝试用数字交换“ObjStartRow”或将整个范围更改为: Range("N29:AC29") 都失败了。

【问题讨论】:

  • 这是不可能的,但在某种程度上@Tim Williams 可以做到here 以及他发布的链接中描述的所有其他方式。
  • MitteOben (Hlpr) -----------> MitteOben Hlpr
  • 由于您没有返回任何值或对象,因此您可以使用常规的Sub 而不是您的Function。如果你想调用它,要么使用MitteOben Hlpr,要么使用旧的Call MitteOben (Hlpr)顺便说一句您的Hlpr 范围不完全符合它所在的Worksheet

标签: vba excel runtime-error


【解决方案1】:

它应该是Sub,而不是函数。在体裁中,函数返回值,subs 做一些事情。

话虽如此,作为在德国工作的 VBA 人员,我请求您开始用英文命名您的函数、变量和子程序。它确实可以避免下一个人处理您的代码的被动愤怒。它使您的代码更好。

Public Sub MitteOben(Bereich As Range)

    With Bereich
        .VerticalAlignment = xlTop
        .HorizontalAlignment = xlCenter
    End With

    With Bereich.Font
        .name = "Tahoma"
        .Size = 10
        .ThemeColor = xlThemeColorLight1
    End With

End Sub

这是怎么称呼它的: call MitteOben(selection)MitteOben selection

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-31
    • 1970-01-01
    • 2016-08-05
    • 2021-10-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多