アプリ版:「スタンプのみでお礼する」機能のリリースについて

グラフタイトルを設定していればグラフタイトルを、設定していなければ「タイトル無i」という文字をstrGTITLEに返そうとしています。(この処理はfor i = 1 to ActiveSheet.ChartObjects.countのループ内で行っています。)

当方マクロ初心者でして、色々調べたりし以下のようなマクロを作成してみたのですが、「このオブジェクトにはタイトルがありません」のエラーが返されます。
どのようにすれば改善できるのでしょうか。
どうぞよろしくお願いいたします。


If ActiveChart.ChartTitle Is Nothing Then '←この行でエラーが起きます
strGTITLE = "タイトル無" & i

Else
strGTITLE = ActiveChart.ChartTitle.Text
End If

A 回答 (1件)

for i = 1 to ActiveSheet.ChartObjects.count で呼び出すとのことしたので


以下の応用編になると思います。

テストには2007を使用しています。

For i = 1 To ThisWorkbook.Charts.Count 'ActiveSheetでも、ThisWorkbookでも
With ThisWorkbook.Charts(i)
If .HasTitle = False Then '有無の判定はHasTitleを用いる
.HasTitle = True
.ChartTitle.Select '2003 対応(フォント設定に必要)
.ChartTitle.Text = "noTitle" & i 'この部分を変数に変える
End If
End With
Next i

ポイントは上記のコメントを参照してください。
    • good
    • 0
この回答へのお礼

HasTitleを使うのは目からうろこでした!
全然気づかなかったため、すごく感動しています。

本当にありがとうございました。

お礼日時:2013/06/09 20:55

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!