VBA中的字符串连接

时间:2010-12-17 16:14:26

标签: vba string-concatenation

我有这个功能:

Function GetFullNameCSV() As String
   GetFullNameCSV = Replace(ThisWorkbook.FullName, ".xlsm", ".txt")
End Function

如果代码看起来像硬编码:

Filename:= "C:\directory\filename.txt"

我可以用它替换它并获得相同的结果:

Filename:= GetFullNameCSV()

在此字符串的情况下出现问题:

Connection:= "TEXT;C:\directory\filename.txt"

我需要使用字符串连接,猜测如下:

Connection:= "\"TEXT;+GetFullNameCSV()+\""

我需要使用哪些代码?谢谢。

1 个答案:

答案 0 :(得分:3)

假设所有部分始终用;分隔,只需将字符串拆分为部分,然后进行更改,然后再将它们连接在一起。

所以对于你的样本我觉得它会是这样的(请注意,从内存写入,所以可能不完全正确):

Dim parts() as String
parts = Split(str, ";")

parts(2) = GetFullNameCSV() ' assuming that part 2 is the one you want to replace

str = Join(parts, ";")