如何在excel中使用VBA每24行插入一行?

时间:2015-05-12 13:42:20

标签: excel vba excel-vba

我是编程新手,需要帮助。

我有一张excel表,有8760行(一年中每小时一次),为了区分每一个新的一天,我需要每24行插一个空行。我知道我必须使用for循环,但不确定要使用的VBA语法等等。

这就是我到目前为止所做的事情,我只是不知道在每24行的情况下放置"":

For i = 1 to i = 8760
Worksheets("Sheet1").Cells(i, "A").Select
ActiveCell.EntireRow.Insert
Next

提前致谢

1 个答案:

答案 0 :(得分:2)

只需遍历单元格区域并使用VBA's mod operator检查是否应插入一行。您可能还想阅读Modulo operator on wikipedia

Public Sub InsertRowOnceEvery24Rows()

    Dim ws As Worksheet
    Set ws = ThisWorkbook.ActiveSheet 'adjust this to get the sheet you need

    Dim rng As Range
    Set rng = ws.Range("A1:A50") 'adjust this to whatever range of cells you need

    Dim i As Integer

    i = 1
    Dim cell As Range
    For Each cell In rng
        If i Mod 24 = 0 Then
            cell.EntireRow.Insert xlShiftDown
        End If

        i = i + 1
    Next

End Sub