VB接近这个excel函数

时间:2013-01-13 10:13:28

标签: excel excel-vba vba

这是功能,它没有任何问题

  1. 替换在一个空格为“”的单元格中出现的所有char 160.
  2. 修剪任何空格。
  3. 在前面再次使用char 160连接到达的号码。
  4. act是引用工作表的名称。

    任何人都可以提供相当于VB的VB吗?

    Range("a1").Value = "=+CONCATENATE(char(160),trim(substitute(" & act & "!RC[3],char(160),"""")))"
    

    我有一个电话索引,上面有相似数字的数字。

1 个答案:

答案 0 :(得分:9)

您可以使用以下任何一项(未经测试

<强> A 即可。 直接将其作为公式输入

在这种情况下,您将.Value替换为.Formula

Range("A1").Formula = "=+CONCATENATE(char(160),trim(substitute(" & _
                      act & "!RC[3],char(160),"""")))"

<强>乙即可。 使用Application.Evaluate您可以使用相同的代码

Range("A1").Value = Application.Evaluate("=CONCATENATE(char(160),trim(substitute(" & _
                    Sheets(act).Range("D1").Value & ",char(160),"""")))")

C 使用VBA功能

Concatenate 等效于&

修剪Trim

替换Replace

Char Chr

RC [3] 是右边的第3个单元格,在这种情况下为Range("D1")

所以上面的内容可以写成

Range("A1").Value = Chr(160) & _
                    Trim(Replace(Sheets(act).Range("D1").Value, Chr(160), ""))