VBA:如何从一个单元格复制部分字符串并用它替换另一个单元格的一部分?

时间:2015-01-28 08:52:08

标签: excel vba excel-vba

excel中的文字我看起来像这样:

[tab]第01节 *第1节的名称 TEXT
TEXT
TEXT
[tab]第2节。
*第2条的名称

TEXT
...

我想在列(1,2,3 ...)中找到下一个SECTION,只复制字符串SECTION 01.(02.,03。,...,52。,...)并将其粘贴到下面的单元格只替换*。

excel的最终结果应如下所示:

第01节。第1节的名称 TEXT
TEXT
TEXT
第02节。第2节的名称

TEXT
...

我尝试录制宏,但它只将相同的文本复制到指定的一个单元格,所以我必须重新排列VB代码。有人可以帮忙吗?

谢谢,

1 个答案:

答案 0 :(得分:0)

此代码迭代列acol = 1),当找到'[tab]'时,它将sctn变量设置为单元格的值(忽略' [标签]')

当找到'*'时,它会将其替换为sctn变量的内容

Dim row as Integer,col as Integer,sctn as String
col=1
row=1
While Cells(row,col)<>""
  If Instr(Cells(row,col),"[tab]")>0 Then
    sctn=Replace(Cells(row,col),"[tab]","")
    Cells(row,col)=sctn
  Else
    Cells(row,col)=Replace(Cells(row,col),"*",sctn)
  End If
  row=row+1
Wend