gpt4 book ai didi

vba - 通过VBA删除excel中的每一行

转载 作者:行者123 更新时间:2023-12-04 21:52:14 28 4
gpt4 key购买 nike

我想编写一个代码,检查一张纸上有多少行,然后每隔一行删除一次。程序应该是这样的:

  • 获取总行数
  • 从最后一行开始,删除
  • 上两行删除
  • 到达第 2 行后,停止

  • 这是我在第 8 行停止工作的代码 activeRow = activeRow - 2 .
    Sub trendlucid()
    Dim numOfRows As Integer
    Dim activeRow As Integer
    numOfRows = Sheets(actualsheet).UsedRange.Rows.Count
    activeRow = numOfRows
    Do While activeRow > 1
    Rows(activeRow).EntireRow.Delete
    activeRow = activeRow - 2
    Loop
    End Sub

    我不知道它为什么会停止。任何人都可以帮助我吗?

    谢谢你,祝你有美好的一天

    最佳答案

    删除行时,循环返回:

    Sub TestMe()

    Dim numOfRows As Long
    Dim activeRow As Long
    numOfRows = ActiveSheet.UsedRange.Rows.Count
    activeRow = numOfRows

    Dim i As Long

    For i = numOfRows To 1 Step -2
    ActiveSheet.Rows(i).EntireRow.Delete
    Next i

    End Sub

    如果您首先将它们保存在一个范围内,然后在最后删除该范围,则删除行有一种更快的方法。因此,您只使用一次删除操作:

    https://stackoverflow.com/a/50350507/5448626

    关于vba - 通过VBA删除excel中的每一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51761324/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com