2016-08-08 7 views
0

基本的な質問が何であるか理解できる人はいますか? ExcelオブジェクトモデルでView >>Object Browserの下に表示されているExcelクラスの大部分は、なぜメンバーの1人としてApplicationですか?私はアプリケーションが階層内のトップレベルのオブジェクトだと思った。誰かが簡単な説明をすることはできますか?Excelオブジェクトモデルとそのメンバー

+0

本当に面白いです。それは確かにトップレベルのオブジェクトです。 –

+2

おそらく同じ理由で、大部分に '.Parent'プロパティがあります。任意のオブジェクトが与えられれば、オブジェクト階層を両方向にトラバースすることができます。 – Comintern

+0

十分に一般的なVBAコードでは、渡されたオブジェクトが含まれているアプリケーションを知る必要があります。 –

答えて

0

アメリカ合衆国には州があり、各州には都市があり、各都市には市民がいます。

すべての市民は、彼女の国として米国を持っています。米国はすべての市民の属性です。同じように、すべての都市には米国があります。米国はすべての都市の属性です。そして、アメリカの階層内のすべてのオブジェクトでも同じことが起こります。

Excelにはブックがあり、各ブックにはExcelが親としてあります。どのように下位にExcelオブジェクトモデルの階層に行くに関係なく、すべてのExcelオブジェクトは、トップレベルのオブジェクトとしてExcelを持っています。すべてのオブジェクトはExcelから来ます。

Applicationプロパティは単なる属性であることに注意してください。それは読み取り専用です。あなたがよりよくでき

例えば、以下の式は、 "Microsoft Excelを" 返します

AppAtribute = ThisWorkbook.Application

AppAtribute = ThisWorkbook.ActiveSheet.Cells(1、1).applicationの

Excelの階層がマップとして表示される場合は、この概念を理解してください。この記事の最後にExcelオブジェクトモデルマップをダウンロードしてください:The Excel object model demystified

関連する問題