Square Beat Engine

Blog for variety of things…

MS-Office

[PowerPoint VBA] PowerPoint.Shapes.Chart エラー発生

投稿日:2015-08-24 更新日:

パワーポイント2007のVBAで、予想外のエラーに遭遇し、解決できたのでメモ。

いきなり結論

パワーポイント2007は、インストール直後はPowerPoint.Shapes.Chartを実装していない様子。
Windows Updateを実施し、Officeをアップデートしたらできるようになる。

状況

基本的には結論の通りなんだけど、念のため状況も記載。

自分のPCでエクセル2007およびパワーポイント2007を使ってデータからチャートを自動的に作成するエクセルマクロを作成した。
諸事情により、他のPCでそれを実行する必要があり、Office 2007をインストール後、そのマクロを実行したところ、Chartメソッドおよびオブジェクトが存在しないというエラーが発生。

以下の方法を試したところ、解決し、無事に実行することができた。

  • 参照設定 → 開発したPCと同じ状況のため問題なし
  • Officeの修復 → 改善せず
  • Windows Update → 解決!

なお、Office 2007の時代は「Microsoft Update」という機能があり、Windows Updateとは別々になっていた。
今はWindows Updateで更新するようになっているため、この点もあわせて記載しておく。

注意点(2003と2010)

解決前、Chartオブジェクトがヘルプに記載されていたことを確認している。
そのため、最初の仮説として、参照設定が間違っているかファイルが壊れているという仮説を立てたのだが、それは誤りだった。

この実行用のPCには、Office 2007をインストールする前、2003や2010をインストールしていたことがあるので、それが悪さをしていた可能性もある。
両方ともアンインストール済みで、修復も実行したので可能性が低いと思うが、間違っていたら申し訳ないのであらかじめ言い訳しておきたい。

以上!

-MS-Office

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

[Excel][VBA] セルの値を転記する方法

エクセルでマクロを作る際に、もっとも基本となるのは、「セルの値を転記する」という処理だと思います。 セルの値を転記する方法は、いくつか存在します。 クリップボード経由でコピーする。 値を直接転記する。 …

[Excel][VBA] Selectメソッドは99%不要

エクセルで、A1セルを選択した後、「abc」という文字列を入力することケースを考えてみます。 この操作をマクロに記録すると、以下のようなコードが生成されるでしょう。 [crayon-5c443ed57 …

[Excel][VBA] リストボックスがクリアされてしまう問題

ActiveXコントロール(OLEObject)のリストボックスは、セルに何かを書き込んだりすると、選択状況がクリアされてしまう。 正確には、自動計算をOFFにしておけばクリアされないのだが、通常は自 …

[Excel][VBA] エクセルVBAではValueプロパティを指定しよう

前回は、自動記録マクロの問題点を3つ挙げ、1つめのSelectメソッドの無駄を指摘しました。 今回は、2つめのFormulaR1C1プロパティについて考えます。 プロパティの指定 FormulaR1C …

[Power Point][VBA] 選択中のグラフのバーの色を調べる方法

パワーポイントで、選択中のグラフのバーの色を調べる方法を紹介する。 コード SeriesCollection内のインデックスは、調べたいバーのインデックスを指定する。 [crayon-5c443ed5 …