如何在 Excel 中包含特定字符的行之前添加条件换行符?
How to add a conditional line break before a row contains a specific character in Excel?
我有一个 excel 2016 文件,其中包含一个 table,如下所示:
ID Name Amount
1 * 500
1 A 300
1 B 200
2 * 250
2 X 150
2 Y 125
2 Z 25
3 * 400
...
我想创建一个规则,在每一行之前添加一个换行符,除了具有 "Name" 值作为星号的第一行。所以我的预期输出是:
ID Name Amount
1 * 500
1 A 300
1 B 200
2 * 250
2 X 150
2 Y 125
2 Z 25
3 * 400
...
我可以设法通过 "Conditional Rule" 选项添加高亮显示,但我如何添加换行符?任何帮助将不胜感激。
Sub insert_row()
Dim ws As Worksheet
Set ws = ActiveSheet 'Better use sheet name here as Sheets("ABC") instead of Activesheet
Dim lastRow as long
Dim r As Long
lastRow = Cells(.Rows.Count, "A").End(xlUp).Row
For r = lastRow To 1 Step -1
If Cells(r, 2).Offset(0, -1) = 1 Then Exit For 'check if id = 1
If InStr(ws.Cells(r, 2).Value, Chr(42)) Then ws.Rows(r).Insert
Next r
End Sub
我有一个 excel 2016 文件,其中包含一个 table,如下所示:
ID Name Amount
1 * 500
1 A 300
1 B 200
2 * 250
2 X 150
2 Y 125
2 Z 25
3 * 400
...
我想创建一个规则,在每一行之前添加一个换行符,除了具有 "Name" 值作为星号的第一行。所以我的预期输出是:
ID Name Amount
1 * 500
1 A 300
1 B 200
2 * 250
2 X 150
2 Y 125
2 Z 25
3 * 400
...
我可以设法通过 "Conditional Rule" 选项添加高亮显示,但我如何添加换行符?任何帮助将不胜感激。
Sub insert_row()
Dim ws As Worksheet
Set ws = ActiveSheet 'Better use sheet name here as Sheets("ABC") instead of Activesheet
Dim lastRow as long
Dim r As Long
lastRow = Cells(.Rows.Count, "A").End(xlUp).Row
For r = lastRow To 1 Step -1
If Cells(r, 2).Offset(0, -1) = 1 Then Exit For 'check if id = 1
If InStr(ws.Cells(r, 2).Value, Chr(42)) Then ws.Rows(r).Insert
Next r
End Sub