VBAにおける「オブジェクト」は理解していますでしょうか。
わかっている前提で回答しますが、 Is 演算子は、「オブジェクト同士の比較」で使う演算子です。
例えば数値型の変数 lngA と lngB があった場合、この比較をする場合は
If lngA = lngB Then
であることは理解できるでしょうか。
この = の左右がオブジェクト型のものである場合、 = の代わりに Is が利用されます。
If A Is Nothing Then
ここでいう変数 A がオブジェクトである場合、ということです。
※なお、Nothing は「空」を示す特別なオブジェクトです。
追記
以下を読むと多分とても混乱するので先に回答らしきものを書いておきます。
Is を使う機会は変数を Nothing と比較する場合がほとんどです。
また、おそらく当面は理解は後回しでいい箇所、だと思います。
そのうえで少し大雑把な説明です。
という言葉の理解がキーとなります。
以下の説明では不足だと思いますので、そのあたりをキーワードに調べてみてください。
変数
VBAに限らずプログラム言語では、処理を汎用化するために「変数」というものを利用します。
簡単な理解のためにこれは数学で出てきた x とか y と同じようなもので、何かが入る箱、くらいの意味で考えてください。
箱の中身は様々なデータです。
データ型
数学の場合、この変数には常に数値が入りましたが、プログラム言語の場合は文字列が入ったり日付が入ったり、様々なものがデータとして格納されます。
この、中身にどういったものが入っているか、というのが「データ型」です。
例えばVBAで
Dim strA As String
というように変数を宣言する、ということをするのですが、これは、
strA という変数をこれから使います。
strA には文字列(String)が入ります。
という宣言になります。
オブジェクト型
データ型には文字列のほかに、整数(Integer や Long)、小数も含んだ数値(SingleやDouble)、日付・日時などの他に「オブジェクト型」があります。
オブジェクト型というのは、それ以外のデータ型が1つのデータしか格納できないのに対して、関連性の強い複数のデータを1つのデータの塊として扱えるものです。
VBAの場合、例えばExcelの「ワークシート」や「セル」はオブジェクトとして扱われます。
例えば、
・セルの値
・セルの背景色
等「セル」というものに対して様々なデータがありますよね。
これらをまとめて「セル」という1つのオブジェクトとして扱います。
このように「モノ」を管理の単位として考え、そのものに付随する複数のデータを1つにまとめて扱うものが「オブジェクト」です。
参考
http://officetanaka.net/excel/vba/variable/11.htm あたりが参考になるかもしれません。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/06/12 13:10
2016/06/12 13:15
2016/06/12 13:24
2016/06/12 13:52
2016/06/12 14:16
2016/06/12 14:18
2016/06/12 15:57
2016/06/12 16:04