>Chart1.Titles(0).Text = "Chart Title"
これがエラーとなる原因は 前回質問 question:1260620297 とほぼ同じで、
Title がまったく無い状態。つまりは(0)すらも存在しないということ。
そのため
>Chart1.Titles.Add("Chart Title")
加える(Add)という所作が必要になる。
実装(プログラミング)する際には、
オブジェクト(今回ならTitleオブジェクト)の存在をチェックして、
上記いずれの処理を行うかの判断を行う必要があります。
(IF コレクション.Count > xx Then とか、
For eachで回したりといったような処理を見たことありません?)
これから貼り付けるという場合は、
まだオブジェクトすら存在してない訳なので、
必然的に後者(Add)になりますよね。
私だけかもしれませんが、このあたりの解説って見当たりませんね。
オブジェクト指向プログラミングの分野で探せば、
それなりのものはあると思いますが、
MS-ChartやVB特有のものではないので、混乱をきたすかもしれず、
とりあえず、上記だけにさせていただきます。
以下、解説ではないですが、
もしかしたら今後必要になるかもしれないと思うので、メモしておきますね。
丁寧な解説ありがとうございます。勉強になりました。昨日からもやもやといていたものがかなり解消さrました。
コントロールの貼り付け後、タイトルを追加、その後Chart1.Titles(0).Text = "Chart Title"
をやったらエラーとなりませんでした。コントロールを追加しただけで初期化され、すべてのプロパティーが存在しているものと思っていました。