您好但是它與數據的最後一個單元格後插入行我已經創建了以下兩個宏。我相信這是我的循環條件爲Do Until ActiveCell.Value = ""
的結果。我想讓循環停止在數據的最後一個單元格。插入細胞不平等的價值,複製,然後刪除插入的行
我嘗試使用變量Do Until Loop_Long = LastRow
但這並沒有爲我工作。
所有我想是有一個宏觀的插入與不同的數據單元格之間的行。然後是一個宏,它會在列中找到空單元格,我們先前插入的單元格,然後刪除該行。
所概述的問題上面它插入一個額外的行,而不是刪除它,如果你把值一路下行B柱之後,在A列數據,你會明白我的意思。
這裏是我的代碼:
Option Explicit
Sub Macro1()
'Insert Blank Row Between Names
Sheets("Sheet1").Select
Range("A1").Select
Do Until ActiveCell.Value = ""
If ActiveCell.Value <> ActiveCell.Offset(1).Value Then
ActiveCell.Offset(1).EntireRow.Insert
ActiveCell.Offset(1).Select
End If
ActiveCell.Offset(1).Select
Loop
End Sub
Sub Macro2()
Dim LastRow As Long
'Delete Inserted Rows
Sheets("Sheet1").Select
LastRow = Cells(Rows.Count, "A").End(xlUp).Row
Range("A" & LastRow).Select
Do Until ActiveCell.Value = Range("A1")
If ActiveCell.Value <> ActiveCell.Offset(-1).Value Then
ActiveCell.Offset(-1).EntireRow.Delete Shift:=xlUp
ActiveCell.Offset(-1).Select
End If
ActiveCell.Offset(-1).Select
Loop
End Sub
首先,您的目標是什麼,因爲您似乎通過刪除剛纔創建的行來擊敗目標......其次,這段代碼對我來說工作得很好。如果列B中有數據,您是否希望跳過該行? – ARich
@例如A1:A9都是不同的名稱。我想在它們之間放一個空格,然後將其複製並粘貼到別處,然後刪除插入的行。此代碼在具有名稱的最後一個單元格後面插入一行,但不會將其刪除。後運行此代碼A18是一個空白行,該行不應該被插入,然後運行該刪除宏將其與A10是一個空行結束。 –