2

这是功能,它可以正常工作

  1. 用空“”替换单元格中出现的所有字符 160。
  2. 修剪任何空白区域。
  3. 在前面再次将到达的数字与 char 160连接起来。

act 是引用的工作表的名称。

任何人都可以给出一个相当于这个的VB吗?

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

我有一个电话索引,上面有类似线路上的数字以进行匹配。

4

1 回答 1

9

您可以使用以下任何一种

一个直接作为公式输入

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

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

使用Application.Evaluatewhich 将让您使用与您拥有的相同的代码

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

C 使用 VBA 函数

串联等效是&

修剪Trim

替代品Replace

字符Chr

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

所以上面可以写成

Range("A1").Value = Chr(160) & _
                    Trim(Replace(Sheets(act).Range("D1").Value, Chr(160), ""))
于 2013-01-13T10:47:04.193 回答