【问题标题】:Replace Compile Error: Wrong number of arguments or invalid property assignment替换编译错误:参数数量错误或属性分配无效
【发布时间】:2014-12-15 16:38:03
【问题描述】:

我在编译我的代码时遇到问题

Dim OriginalText As String
Dim CorrectedText As String

OriginalText = Range("A5").Value

CorrectedText = Replace(OriginalText, "a", "o")

Range("A5").Offset(, 1).Value = CorrectedText

在单元格 A5 中,我有 Micrasaft 这个词,我想用 Microsoft 替换。

我收到“编译错误:参数数量错误或属性分配无效”。


我知道为什么,因为我调用了我的 Sub Replace,不知道如果你将 sub 命名为公式,它不会编译

【问题讨论】:

  • 还有代码吗?哦顺便说一句。一行代码就可以达到同样的效果:Range("A5").Offset(0, 1).Value = Replace(Range("A5"), "a", "o")
  • 同样的问题,我的公式仍然出现编译错误,并且我消除了所有声明的变量,不知道为什么会出现此错误
  • 这就是全部代码吗?它位于哪里?这个程序的名称是什么?它需要任何参数吗?
  • 什么是.Offset(, 1)
  • 我认为您在代码中的某处调用了另一个函数/变量Replace。如果你把它改成使用VBA.Replace,它会起作用吗?

标签: excel vba replace


【解决方案1】:

试试下面的方法:

Dim OriginalText As String
Dim CorrectedText As String

OriginalText = Range("A5").Value

CorrectedText = VBA.Strings.Replace(OriginalText, "a", "o")

Range("A5").Offset(, 1).Value = CorrectedText

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多