- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
有没有比我目前使用的更好的方法来删除 Excel 电子表格中的行?
在电子表格上,我运行一个宏,如果特定单元格中的数字为“0”,则删除一行。
Public Sub deleteRowsIfZero(colDelete As Integer)
Dim r As Long
Application.ScreenUpdating = False
For r = Cells(Rows.Count, colDelete).End(xlUp).Row To 1 Step -1
If Cells(r, colDelete).Value = "0" Then Rows(r).Delete
Next r
Application.ScreenUpdating = True
End Sub
最佳答案
我会使用一个连续的范围并一次性删除它:
Public Sub deleteRowsIfZero(strSeekValue As String)
Dim lngRowsToDelete() As Long
Dim strRowsToDelete() As String
Dim x As Long, y As Long, n As Long, z As Long
On Error GoTo err_
'get the extent of the workbook range
x = Me.UsedRange.Rows.Count
n = -1
'switch off screen updating and calculation
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
'starting from row 1, look for the strSeekValue in column A, keep going till x is reached
For y = 1 To x
If Me.Range("A" & y).Value = strSeekValue Then 'if we find one, pop the row number into the array
n = n + 1
ReDim Preserve lngRowsToDelete(0 To n)
lngRowsToDelete(n) = y
End If
Next y
'if none were found, don't do the next bit
If n = -1 Then GoTo err_
'create a string of all the rows we found
z = 0
ReDim strRowsToDelete(z)
For y = 0 To n
strRowsToDelete(z) = strRowsToDelete(z) & lngRowsToDelete(y) & ":" & lngRowsToDelete(y) & ","
If Len(strRowsToDelete(z)) > 240 Then 'As A.Webb points out, the 255 limit will be a problem here
strRowsToDelete(z) = Left(strRowsToDelete(z), Len(strRowsToDelete(z)) - 1) 'drop the trailing comma
z = UBound(strRowsToDelete) + 1 'resize the array
ReDim Preserve strRowsToDelete(0 To z)
End If
Next y
For y = z To 0 Step -1
If Right(strRowsToDelete(z), 1) = "," Then strRowsToDelete(z) = Left(strRowsToDelete(z), Len(strRowsToDelete(z)) - 1)
'now delete the rows
Me.Range(strRowsToDelete(y)).EntireRow.Delete
Next y
err_:
'assumes calculation was set to auto
Application.Calculation = xlCalculationAutomatic
If Err Then Debug.Print Err.Description
Application.ScreenUpdating = True
End Sub
'run sub foo
Sub foo()
deleteRowsIfZero "0"
End Sub
关于excel - 删除电子表格中行的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13234009/
我想在 scilab 中绘制 limacon,我有这个方程需要处理: 我知道r>0和l>0 当我编译以下代码时,我在第 5 行收到此错误: Inconsistent row/column dimens
我试图更好地了解行和行集在 PeopleCode 中的用途?我读完了PeopleBooks,但仍然觉得我没有很好的理解。我希望对这些与应用程序引擎程序相关的内容有更多的了解。也许通过一个例子可能会有所
我有 4 列的行,每列都有一个标题和一些文本。大多数列都有相似数量的文本,将其列中的按钮向下按以匹配其余列。但是,一列的文本较少,并且没有将按钮向下推得足够远。 有没有办法将按钮对齐到行的底部?我想实
我有这个模型 summary = models.TextField() 但我只想有 4 行和 15 列。 此外,如果我这样做,我是否需要重新安装数据库。 最佳答案 TextField
我想在 iPhone 中创建 SSL 服务器套接字的客户端,但我在 iPhone 中找不到任何 API。我有带密码的有效证书文件 最佳答案 你看过OpenSSL了吗? ? 关于iphone - iPh
For Each cell In sheets(1).Range("A50:A606") For Each cell2 In sheets(2).Range("EX2:ACB2") cell2.
这是我的矩阵 [,1] [,2] M -1 -5 T 8 -4 W -3 9 Th
我有一个全局char *在运行时,重新声明为指向声明为 way 的二维数组的指针。 : char (*A)[N][M] = malloc(sizeof(char[BUF_16][N][M])); 然后
我是一名优秀的程序员,十分优秀!