如何在不使用每个单元格的情况下迭代单元格?

时间:2018-04-12 19:16:06

标签: excel vba excel-vba

我希望能够通过循环设置Cells函数的索引,以便我可以使用控制函数比较单元格:

Sub cellsTest()
Dim i As Long
Dim price As Long

   For i = 1 To 100
   price = Cells(i, 6).Value
   MsgBox (price)
   Next i

End Sub

然而这不起作用。这似乎能够设置等于数值单元格值的长类型变量将是VBA的基本操作。我不想强迫这个为每种格式。有没有办法使这项工作?

2 个答案:

答案 0 :(得分:4)

您已声明class FirstViewController: UIViewController { var currentBalance = 0 override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. print(currentBalance) } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } } 这意味着在为price变量赋值时,如果分配的值不是数字,则代码将引发错误13 Type Mismatch。即如果列F包含文本字符串或错误值,则会抛出错误13。

在这种情况下,您应检查分配的值是否为数字,如下所示......

price As Long

答案 1 :(得分:2)

试试这个......

<table>
  <tr>
    <th>This is a th</th>
  </tr>
  <tr>
    <td>This is a td</td>
  </tr>
</table>

如果存在对不存在的单元格的引用(即单元格包含Sub cellsTest() Dim i As Long Dim price As Variant For i = 1 To 3 If Not IsError(Cells(i, 6).value) Then price = Cells(i, 6).value MsgBox price End If Next i End Sub )或者检测到其他一些错误,则会跳过该单元格并转到下一个单元格。

此外,我将类型#REF!更改为Long类型,因为这将采用任何类型的输入,而不仅仅是数字。