如何在VBAexcel中的if函数中selecttable单元格?
How to select table cell in the if function in VBA excel?
我在excelsheet有一个库存管理table。演示在这里:
Demo photo of this table
我想在 VBA 中创建 库存 列中的代码,并将测试整个单元格。如果任何 cell.Value < 2 和 >0 则向后转到 4 个单元格,获取此单元格的值并显示一个消息框
“落后 cell.value 和 库存不可用 ”。
我做这个很累,请帮帮我。
select table 单元格有几种方法,这里是一个'
Option Explicit
Sub CheckStock()
Dim r As Long, n As Long, i As Integer, p As Integer
Dim s As String
With Sheet1.ListObjects("Table1")
i = .ListColumns("In stock").Index
p = .ListColumns("Product Name").Index
For r = 1 To .DataBodyRange.Rows.Count
n = .DataBodyRange(r, i)
If n > 0 And n < 2 Then
s = s & vbCrLf & .DataBodyRange(r, p)
End If
Next
End With
If Len(s) > 0 then
MsgBox "Products not available :" & s, vbExclamation
End If
End Sub
我在excelsheet有一个库存管理table。演示在这里: Demo photo of this table
我想在 VBA 中创建 库存 列中的代码,并将测试整个单元格。如果任何 cell.Value < 2 和 >0 则向后转到 4 个单元格,获取此单元格的值并显示一个消息框 “落后 cell.value 和 库存不可用 ”。
我做这个很累,请帮帮我。
select table 单元格有几种方法,这里是一个'
Option Explicit
Sub CheckStock()
Dim r As Long, n As Long, i As Integer, p As Integer
Dim s As String
With Sheet1.ListObjects("Table1")
i = .ListColumns("In stock").Index
p = .ListColumns("Product Name").Index
For r = 1 To .DataBodyRange.Rows.Count
n = .DataBodyRange(r, i)
If n > 0 And n < 2 Then
s = s & vbCrLf & .DataBodyRange(r, p)
End If
Next
End With
If Len(s) > 0 then
MsgBox "Products not available :" & s, vbExclamation
End If
End Sub