

セル(2,2),セル(2,3)計算式が空文字参照と判定する方法をご存知の方はいらっしゃいませんか。

[code]

    Sub atest()
        Cells(1, 1) = 3: Cells(1, 2).FormulaR1C1 = "=RC[-1]+5"
        Cells(2, 1) = "": Cells(2, 2).FormulaR1C1 = "=RC[-1]+6": Cells(2, 3).FormulaR1C1 = "=RC[-1]+7"
    '3,8
    '"",6,13
    End Sub
    
[/code]

検索エンジンgoogleで、「vba "参照セルが空文字"」を検索しましたが、  
「vba "参照セルが空文字"」との一致はありません。


CC BY-SA 3.0
2018-04-20T15:04:34.363
43441
2018-05-10T23:40:38.947
17199
question
vba
vbaの計算式が空文字を参照と判定できますか


ワークシート関数でセルが空白であるか判定するには`ISBLANK`を使用すればよいです。

参照先が空白の場合、数値として扱いたくないのであれば`IF`を併用して

[code]

    Cells(2, 2).FormulaR1C1 = "=IF(ISBLANK(RC[-1]),"""",RC[-1]+6)"
    
[/code]

のように分岐することができます。

またセル範囲に対して`ISBLANK`かどうかを判定したい場合は空白でないセルの数を返す`COUNTA`関数を用い、`COUNTA(RC[-2]:RC[-1])
= 0`のように判定するのが手軽です。`COUNTA`は可変長引数ですので`COUNTA(RC[-5], RC[-3],
RC[-1])`と複数の範囲を指定することもできます。


CC BY-SA 4.0
2018-04-21T01:23:24.950
43446
2018-05-10T23:40:38.947
2018-05-10T23:40:38.947
5750
5750
43441
answer