Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
vba选择当前范围,但不带N/A_Vba_Excel - Fatal编程技术网

vba选择当前范围,但不带N/A

vba选择当前范围,但不带N/A,vba,excel,Vba,Excel,我有一个范围,它是一个时间和一个像这样的数字,其中时间在单元格A1中: time number 07:52:55 3 07:53:52 2 07:54:55 #N/A 07:55:52 2 现在我要选择范围,因此我要: Set rng = ActiveSheet.Range("a1").CurrentRegion 这给了我上面RNG对象中的范围,但我不想要任何N/A。有没有一种简单的方法可以在没有N/As的情况下获得RNG对象的范围。我希望这样做时

我有一个范围,它是一个时间和一个像这样的数字,其中时间在单元格A1中:

   time    number
   07:52:55  3
   07:53:52  2
   07:54:55  #N/A
   07:55:52  2
现在我要选择范围,因此我要:

Set rng = ActiveSheet.Range("a1").CurrentRegion
这给了我上面RNG对象中的范围,但我不想要任何N/A。有没有一种简单的方法可以在没有N/As的情况下获得RNG对象的范围。我希望这样做时不要在范围内循环。这可能吗?你能用特殊的电池吗

我应该说,我需要将这个范围读取到一个2D数组中,而不需要NAs。当我尝试使用autofilter筛选NAs时,Arr未完全填充

          Sheets("data").Select
                     Range("A1").Select
                     rngAddress = Range("A1").CurrentRegion.Address
                     Selection.AutoFilter
                     ActiveSheet.Range(rngAddress).AutoFilter Field:=2, Criteria1:="<>#N/A", Operator:=xlFilterValues
                      Range(rngAddress).Select
                     Set rng = Selection.SpecialCells(xlCellTypeVisible)
                     rng.Select
                     Arr = rng  'Arr is not populated with the full array

谢谢大家!

我个人会这样做:

.按“数字”列降序排列范围我相信N/A将出现在底部

使用。查找以查找第一个NA

从Activecell.Row-1中选择

-或-

如果您不在乎保持N/为您所能使用:

Sub FormatSheet()
Dim rng As Range

Set rng = Range(Range("K6"), Range("D65536").End(xlUp).Offset(0, 7))
rng.SpecialCells(xlCellTypeFormulas, xlErrors).EntireRow.Delete
Set rng = Nothing
End Sub
此代码将删除所有不适用的行


代码取自:

为什么不应用筛选器并仅选择可见单元格?问题是,我必须将其读入2D数组,并且在执行此操作时:RangeA1.选择rngAddress=RangeA1.CurrentRegion.Address Selection.AutoFilter ActiveSheet.RangerngAddress.AutoFilter字段:=2,标准1:=N/A,运算符:=xlFilterValues RangerngAddress。选择Set rng=Selection.SpecialCellsxlCellTypeVisible rng。选择Arr=rng