Excel公式,为其下方的每一行添加标题

时间:2012-04-20 20:01:42

标签: excel excel-vba vba

所以我得到了这样的东西(全部在A栏,单独的行中):

Title01

atext atext atext atext atext atext

btext btext btext btext btext

ctext ctext ctext ctext ctext

title02

atext atext atext atext atext atext

btext btext btext btext btext

ctext ctext ctext ctext ctext

title03

atext atext atext atext atext atext

btext btext btext btext btext

ctext ctext ctext ctext ctext

我需要解决方案来改变它:

Title01

Title01 - atext atext atext atext atext

Title01 - btext btext btext btext btext

Title01 - ctext ctext ctext ctext ctext

Title02

Title02 - atext atext atext atext atext atext

Title02 - btext btext btext btext btext

Title02 - ctext ctext ctext ctext ctext

Title03

Title03 - atext atext atext atext atext

Title03 - btext btext btext btext btext

Title03 - ctext ctext ctext ctext ctext

** Basicaly - 为每列添加前缀(标题)直到下一个标题的行... 有什么想法我怎么能完成这个大约3000线完全和他们在每个标题下不一样...

谢谢!**

3 个答案:

答案 0 :(得分:2)

Sub Tester()    
    Dim c as Range, ttl as string

    for each c in selection.cells
       if lcase(c.value) like "*titletext*.txt" then
          ttl = c.value
       else
          if len(c.value)>0 and len(ttl)>0 then 
              c.value = ttl & " - " & c.value
          end if
       end if
    next c
End sub

答案 1 :(得分:2)

  • 进入单元格B1放置公式=A1
  • 进入单元格B2放置公式=IF(MID(A2, 1,5)="Title", A2, B1)
  • 将该公式填入数据的最后一行。
  • 进入单元格C1放置公式=IF(MID(A1, 1,5)="Title", A1, B1 & " - " & A1)
  • 填写。

现在你在C栏中有了你想要的东西。你可以复制,然后粘贴特殊的>价值摆脱公式。

答案 2 :(得分:0)

您无法在单元格中将条目“推”到其他单元格中。其他单元格必须是返回标题的公式。所以你有类似

的东西
    A
1   Title01
2   =A1&"atext atext atext atext atext"
3   =A1&"btext btext btext btext btext"

依此类推。