私も、ちゃんと説明はできないのですが、少しだけ。
「CreateObject」は「VBScript」に機能を追加する、と思ってください。
「VBScript」はファイルやフォルダすら、そのままでは扱うことができないので、その機能を追加するのが、
Set s = CreateObject("Scripting.FileSystemObject")
(「Set s」の「s」は何でも構いません)
これで、変数「s」にファイルやフォルダを扱う機能が追加されました。
例えば、
Set g = s.GetFolder(".")
とすれば、「s」の機能を使って、今現在、プログラムが存在するフォルダを取得できます。
また、エクセルを「VBScript」で扱うには、
Set e = CreateObject("Excel.Application)
とすることで、エクセルを「VBSript」から、操作することができます(もちろん、そのパソコンにエクセルがインストールされていなければなりませんが)。
「Shell.Application」については、「Windows Shell」などで検索してみてください。
会社などで、ネットを管理しておられる方は、「Shell」を使っておられることがよくあります。
次に「NameSpace」は、そのまま「名前空間」と呼ばれるものですが、これも「名前空間」で検索してみてください。
私も、何となくの意味しか分かっていません。
私も、普段「VBScript」でプログラムを書いていますが、たいていは、何百もあるエクセルファイルの特定のセルから特定の順番でデータを抜き出し、それを他のエクセルファイルやワードの表、テキストにまとめたりするぐらいで、ご質問の「Shell」や「名前空間」、「Class」などを扱うことがなく、ほんの数十行のプログラムばかりです。
勉強、がんばってください。
お礼
どうして動くのでしょうか? という 解答しにくい問題に解答していただきありがとうございました。 名前空間について調べているところですが、 名前の衝突をさける との記述でわからなくなってます。 変数を何個もつかっているわけではないのに、衝突をさけるってなんでだぁ??? って状態です。 また質問させてもらいます。