我在excel表中有一列包含IF条件,即
=If(Cond 1 is TRUE, X, Y)
现在,在使用此条件后,我在列中获得了某些值。可以考虑以下格式(这些是实际值):
4L
4L
4L
4L
注意:上面col中的两个空单元格是TRUE条件的结果(条目4和5,我输入了总共6个条目,两个是空单元格)。因此,它们是有效的。 (让我打电话给上面的“A”以供将来参考)
现在,这些空单元格实际上包含公式(if条件)。我希望 CLEARCONTENT 使用VBA,但它不起作用。
我正在尝试以下代码:
If ActiveSheet.Cells(row_no, col_no) = "" Then
ActiveSheet.Cells(row_no, col_no).ClearContents
End If
但这不起作用。我只想通过在整个列上运行循环来清除那些空单元格。 TEXT存在的列的单元格(即4L),应该被跳过,但是一旦代码遇到EMPTY CELL(实际上有IF条件),它应该清除内容并完成循环。因此,最终结果将与列“A”相同,唯一的区别是空单元格现在将为BLANK,即它们不会有任何IF条件。
我没有运行循环的问题,但我没有得到如何告诉VBA关于那个空单元格并清除它的内容。希望我能够发布一个清晰的查询。提前感谢。
此致 纳亚尔
答案 0 :(得分:0)
请尝试以下示例代码:
Sub test()
'Assuming your data in column A from A2
Set Rng = Range("A2", Cells(Rows.Count, 1).End(xlUp))
For Each cell In Rng
If cell.Value = "" Then
cell.ClearContents
End If
Next
End Sub
在您的公式=If(Cond 1 is TRUE, X, Y)
中,您没有提供任何输出,例如"" ,这会让您空白。请更新它,然后尝试:)
答案 1 :(得分:0)
试试这个
If (Range("A35").Value = "") Then
Range("A35").Formula = ""
End If