★ExcelVBA・AccessVBA ~ オブジェクトも「値」に含めて理解してしまう理由
  
※まだ書きかけです。すみません。
※間違ってたらすみません。
※メモ書きなので、自分でも意味不明な箇所も多いです。ごめんなさい。

  

VBAのヘルプを読む際には、そう理解してしまったほうがしっくりくる場合が少なからずあるから、、、です。

実は、明確に、オブジェクト=値の1つ、と解説されたヘルプページはなさそうです。
でも、実際にVBAのヘルプを読む際には、「オブジェクトも値のうちの1つ」と理解してしまうほうが意味を理解しやすい場面が多々、あります。

例えば、エラーメッセージの解説で、
「代入式の左辺の関数呼び出しは、バリアント型またはオブジェクト型の値を返さなければなりません。」
というものがあります。

「オブジェクト型の値」とあります。これは、「オブジェクトも値のうちの1つ」と理解してもOKということです。(無理矢理かもしれませんが。)

また、「バリアント型またはオブジェクト型の値を」とも書かれているわけですから、
これはつまり、「バリアント型の値と書いた」ということと同じです。
そもそもなのですが、例えばバリアント型の変数には、文字系のデータだけではなく、オブジェクト(オブジェクトへの参照)も格納出来てしまいます。
(文字系のデータ=「プリミティブな型のデータ」です。プリミティブ=基礎的な、とか、原始的な、とかの意味だそうです。ここでは、数値、文字列、日付データ、時刻データ、Ture/Falseの論理値、などのことを指します。)

ヘルプではバリアント型について、以下のように説明されています。

『バリアント型は特殊なデータ型で、固定長の文字列型 (String) データとユーザー定義型を除く、あらゆる種類のデータを格納することができます。また、バリアント型には、特殊な値 Empty 値、Null 値、およびエラー値や Nothing なども格納することができます。』

これはどう見ても「オブジェクト型のデータもOKだよ!」と言ってもいることになります。
「あらゆる種類のデータを格納することができます」なのですから。

なら、バリアント型のデータを説明するとき、その「値」(中身)については、文字系のデータはもちろん、オブジェクトも含まれるわけですから、逆に言うと、
VBAでは、「バリアント型というデータ型があるがゆえに」、
「値」=「プリミティブな型のデータ(数値や文字列など)とオブジェクト型のデータの両方」、
としなければ、なかなか説明がつきません。

また、Rangeオブジェクトでは、 「Range.ListObject」プロパティの説明において、以下のように説明しています。
「 Range オブジェクトに対応する ListObject オブジェクトを返します。値の取得のみ可能です。ListObject オブジェクト型の値を使用します。 」

「値の取得のみ可能で、その値は、ListObject オブジェクト型の値だ」、と説明されています。

ここからも、「オブジェクトも値のうちの1つ」と理解してもOKと読めます。

そのようなことから、VBAでは「値=プリミティブな型のデータとオブジェクトの両方」ととらえてしまったほうがヘルプや全体を理解しやすいと思います。

他の言語ではプリミティブな型のデータとオブジェクトを分けて説明することも多いかと思いますが、、、。

説明になってないような説明で済みませんが、そのような理解で良いと思います。