对我来说,这是非常先进的。 以下是工作表布局的示例:
Row# ColA ColB
23 7 Description
24 8 Description
25
26 For cases with
27 SpecialOptionDesc = Yes
28 9 Description
29
30 For cases with
31 SomeOptionDesc = Yes
32 and
33 AnotherOptionDesc = No
34 9 Description
35
36 10 Description
当他们出现“For cases with”时,我需要整合ColB中的信息,下面有单元格。信息需要最终在ColA中具有标识号的行上。因此,在这种情况下,ColB Rows 26,27,28将全部“复制”或放入ColB第28行。同样,ColB Rows 30至34将全部位于ColB第34行。旧行(26,27,30, 31,33)可以删除捣碎在一起或其他什么。不再需要这些行的数据。
答案 0 :(得分:0)
我实际上没有编译它并尝试使用Excel,但我认为如果不是所有的话,它会让你90%的方式。我稍稍离开电脑,但是当我回来时会做一些测试。
Dim cellValue As String
Dim i As Integer
Dim j As Integer
Dim strResult As String
Const endRow As Integer = 500
For i = 1 To endRow
If LCase(ActiveSheet.Cells(i, 2).Value) = "for cases with" Then
j = 0
strResult = ""
While ActiveSheet.Cells(i + j, 1).Value = "" And i + j < endRow
strResult = strResult + " " + ActiveSheet.Cells(i + j, 2).Value
' delete stuff after using
ActiveSheet.Cells(i + j, 2).Value = ""
j = j + 1
Wend
ActiveSheet.Cells(i + j, 2) = strResult + " " + ActiveSheet.Cells(i + j, 2)
End If
Next i