如果循环读取.74大于.99,则excel VBA?

时间:2017-11-28 17:16:12

标签: excel vba excel-vba if-statement export

所以问题是我正在经历一个范围,如果向右偏移的任何一个单元格大于99%(.99),那么就是导出该表格并清除信息。由于某种原因,它没有正确阅读,从我看到的任何高于50%的数字出口和清算。我不确定我有什么不对,但任何帮助都将不胜感激!

Sub Export_loop()

Application.ScreenUpdating = False
Application.DisplayAlerts = False

Dim Vol As Long
Dim Wght As Long
Dim LR As Long
Dim rng As Range
Dim rCell As Range

LR = Sheets("Summary").Range("B" & Rows.Count).End(xlUp).Row

Set rng = Sheets("Summary").Range("A2:A" & LR)

LR = Range("B" & Rows.Count).End(xlUp).Row

Sheets("Summary").Range("A2").Activate

Vol = ActiveCell.Offset(0, 7).Value
Wght = ActiveCell.Offset(0, 9).Value

For Each rCell In rng

If Vol > 0.99 Or Wght > 0.99 Then

Call Save_Out
    ThisWorkbook.Sheets(ActiveCell.Value).Activate
    Range("A3:N24").Clear
    Range("R3:R24").Clear
    Range("X3:X24").Clear

ThisWorkbook.Sheets("Summary").Activate
ActiveCell.Offset(1, 0).Select
    Vol = ActiveCell.Offset(0, 7).Value
    Wght = ActiveCell.Offset(0, 9).Value

Else

ActiveCell.Offset(1, 0).Select
    Vol = ActiveCell.Offset(0, 7).Value
    Wght = ActiveCell.Offset(0, 9).Value

End If

Next rCell

MsgBox "Exports Completed"

End Sub

1 个答案:

答案 0 :(得分:2)

您使用Long作为数据类型。 Long数据类型用于 整数 数字,这些数字太大而无法容纳整数数据类型。

您应该使用 Double 数据类型,具体取决于您需要的精确程度