Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.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 仅选择公式给出数字的单元格,而不选择空单元格_Vba_Excel - Fatal编程技术网

Vba 仅选择公式给出数字的单元格,而不选择空单元格

Vba 仅选择公式给出数字的单元格,而不选择空单元格,vba,excel,Vba,Excel,我有一张excel表格,上面的所有单元格都应用了以下公式: =IF(或(A2=“”;B1=“”);”;IF(ISERR(VLOOKUP($A2&“-”&B$1;Sheet1!$D$1:$D$1000;1;FALSE));0;1)) 公式根据某些条件给出0或1,如果不满足这些条件,则给出“(空单元格)。 现在,从这些结果开始,我想选择工作表中的所有单元格,作为结果0或1,以便进行进一步的操作。 知道所有这些单元格之间不会有空格,我该怎么做呢?巴里·卡特的改编答案: 在“查找和替换”对话框中,在“查

我有一张excel表格,上面的所有单元格都应用了以下公式:

=IF(或(A2=“”;B1=“”);”;IF(ISERR(VLOOKUP($A2&“-”&B$1;Sheet1!$D$1:$D$1000;1;FALSE));0;1))

公式根据某些条件给出
0
1
,如果不满足这些条件,则给出
(空单元格)。 现在,从这些结果开始,我想选择工作表中的所有单元格,作为结果0或1,以便进行进一步的操作。
知道所有这些单元格之间不会有空格,我该怎么做呢?

巴里·卡特的改编答案:

在“查找和替换”对话框中,在“查找内容”框中键入“1”。
单击“全部查找”,查看带有“1”的单元格列表
在列表中选择一个项目,然后按Ctrl+A组合键选择整个列表

现在您已经选择了所有带有“1”的单元格

如果需要选择所有0和1,您可以转到搜索并再次选择,
然后“转到”
然后转到“特殊”
如果您选择“公式”和“数字”,您将最终选择所有0和1

dim a as long, i as long, rng as range
with cells(1, "A").currentregion
    set rng = .specialcells(xlCellTypeFormulas, xlnumbers)
    for a=1 to rng.areas.count
        for i=1 to rng.areas(a).cells.count
            'do something with rng.areas(a).cells(i)
        next i
    next a
end with

'more simply as,
with cells(1, "A").currentregion
    .specialcells(xlCellTypeFormulas, xlnumbers).select
end with

您也可以使用F5(GoTo)、Special、Formulas、Number,OK。

什么范围或列包含公式?当您说select时,您不介意用空值隐藏单元格吗?如果是这样,最好的选择是
过滤器
。然后只选择可见单元格。谢谢您的回答。是否可以同时搜索0和1,以便选择包含这些值的所有图纸范围?非常感谢!请参阅我的调整后的答案:)谢谢你的答案,但我正在寻找一个同时选择所有范围并在之前进行操作的选项。你知道我是如何做到这一点的吗?请看我回答末尾的叙述。