基于迭代和条件的打印值

时间:2015-10-11 09:25:55

标签: vba

我想在范围内的空白单元格中打印1到10或更少的值(A1:A10) 如果我们在范围内找到任何非空白单元格(A1:A10),那么我们必须跳过单元格并打印值而不会干扰系列,即1,2,3,A(非空白单元格),4,5等

我试过

Dim i As Integer 
For i = 1 To 10
If Sheets("Data").cell("K" & i).Value Is Nothing Then
Sheets("Data").Range("K" & i).Value = i
i = i + 1
End If
Next i

2 个答案:

答案 0 :(得分:0)

您最好使用For Each循环并在每次打印数字时手动递增i变量,使用迭代单元格行作为行来打印{{1}的值} 至。

i

答案 1 :(得分:0)

  

If Sheets("Data").cell("K" & i).Value Is Nothing Then

在您的问题文本中,您提到范围来自A1:A10。在代码中,您提到" K"。除非它是一个错字,这可能是其中一个原因。另外,用以下内容替换上面的if条件:

If ((Sheets("Data").cell("K" & i).Value Is Nothing) Or  (Trim(Sheets("Data").cell("K" & i).Value) = "")) Then