
No.3ベストアンサー
- 回答日時:
Excelでは「空白セル」はNullではないようです。
If Cells(I,3) = "" Then・・・
と指定すると、「空白セル」として認識されています。
「空白セル」とNull値(何も無い)セルの違いは識者のご登場待ちということで。
回答ありがとうございます。
この方法で無事できました!
前までは
**** = "" then
っていう方法をよく使ってたんですが、
これより「IsNull」を使ったほうがいいというのを
ExcelかAccessか忘れましたが、よくいわれたので
使ってたのが逆にダメだったみたいですね。
ありがとうございました。
No.5
- 回答日時:
VB、VBAでのNullは難しいですね。
余り使う場合が無いように思う(無知故か?)。APIやC言語プログラム(ポインタや文字列の終端)と関連するレベルのものを考える時に使われる?。下記テストをやって見ました。
vbNullCharとNullも違うようです。
Sub test03()
Dim x As Variant
ActiveSheet.Cells(1, 1) = IsNull(x)
ActiveSheet.Cells(1, 2) = Len(x)
x = Null
ActiveSheet.Cells(2, 1) = IsNull(x)
ActiveSheet.Cells(2, 2) = Len(x)
x = ""
ActiveSheet.Cells(3, 1) = IsNull(x)
ActiveSheet.Cells(3, 2) = Len(x)
x = vbNullChar
ActiveSheet.Cells(4, 1) = IsNull(x)
ActiveSheet.Cells(4, 2) = Len(x)
x = Chr(0)
ActiveSheet.Cells(5, 1) = IsNull(x)
ActiveSheet.Cells(5, 2) = Len(x)
x = &H0
ActiveSheet.Cells(6, 1) = IsNull(x)
ActiveSheet.Cells(6, 2) = Len(x)
End Sub
普通セルの値がDelキーを押した状態を判別するなら
=""やIsEmptyでしょうか。
ただし=""を入れて
Sub test06()
If IsEmpty(Cells(5, "c")) = True Then
MsgBox "Empty"
Else
MsgBox "NotEmpty"
End If
を実行するとNotEmptyになるので、値だけを判別しているのではなさそうです。
参考
http://www.akj.co.jp/aug/qa/ans0001-0050/0159.html
回答ありがとうございます。
詳しい説明&実験?ありがとうございました。
今回は#3の方の方法で無事解決しましたが、
時間があるときに試してみたいと思います。
ありがとうございました。
No.4
- 回答日時:
空白(未使用)セルのとき True にするのあれば、
If IsEmpty(Cells(I, 3)) Then
のようにすると良いでしょう。
If Cells(I, 3).Value = "" Then とか
If Cells(I, 3).Value = vbNullString Then
のようにすると Cells(I, 3)に「式」が設定されていて、
その演算結果がNullString("")のときも True になります。
No.1
- 回答日時:
Cellsは「Cells(行番号,列番号)」のように、行と列を数値で指定します。
列番号はA列なら1、B列なら2になります。従って「Cells(I,3)」は「セルI3」ではありません。
「Cells(I,3)」は「変数Iに入っている値の行の、C列」です。変数Iに「1」が入っていればセルC1を、変数Iに「100」が入っていればセルC100を参照します。
Cellsで「セルI3」を参照する場合は「Cells(3,9)」です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの文字数列関数と競馬...
-
エクセルでフィルターした値を...
-
表計算ソフトでの様式の呼称
-
エクセルシートの見出しの文字...
-
エクセルに写真が貼れない(フ...
-
【マクロ】実行時エラー '424':...
-
【画像あり】【関数】指定した...
-
Office2021のエクセルで米国株...
-
【関数】3つのセルの中で最新...
-
LibreOffice Clalc(またはエク...
-
Excelで4択問題を作成したい
-
【画像あり】オートフィルター...
-
空白のはずがSUBTOTAL関数でカ...
-
エクセルのVBAで集計をしたい
-
Excelに貼ったXのURLのリンク...
-
エクセルのライセンスが分かり...
-
【マクロ】excelファイルを開く...
-
エクセルの複雑なシフト表から...
-
エクセルのリストについて
-
【関数】=EXACT(a1,b1) a1とb1...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】実行時エラー '424':...
-
エクセルのVBAで集計をしたい
-
Office2021のエクセルで米国株...
-
【画像あり】オートフィルター...
-
vba テキストボックスとリフト...
-
他のシートの検索
-
【マクロ】【相談】Excelブック...
-
【マクロ】【配列】3つのシー...
-
【マクロ】元データと同じお客...
-
【マクロ】数式を入力したい。...
-
【マクロ】左のブックと右のブ...
-
エクセルの関数について
-
エクセルのリストについて
-
【マクロ】変数に入れるコード...
-
エクセルシートの見出しの文字...
-
【マクロ】excelファイルを開く...
-
【関数】3つのセルの中で最新...
-
エクセルの複雑なシフト表から...
-
【マクロ】【画像あり】❶ブック...
-
LibreOffice Clalc(またはエク...
おすすめ情報