|
VBA超初心者です。
特定のフォルダに入っている複数のエクセルファイル内の、特定のシートには複数のグラフが存在しています。
そのグラフは円グラフで、パーセント表示に設定されています。
仮に
特定のフォルダへのパス:「C:\Documents and Settings\Macro」
格納されているエクセルファイル(参照先):A.xls、B.xls、C.xls、…
シート名(全てのエクセルファイルに共通):「グラフ」
情報を取得したいグラフ名:「1.」(グラフの種類は円グラフ、パーセント表示)
だとして、カレントexcelファイルに、参照元の円グラフ「1.」で表示されているパーセントの値のみを分類別にVBAで取得することはできますでしょうか?
たとえば、円グラフの区分「4月」が10%という表示だった場合、「10」という値を取得したいと考えています。
区分が「4月」「5月」「6月」「7月」とあって、それぞれ全ての%の値を取得したいと考えています。
見よう見まねでVBを書いてみましたが、
どうしても「グラフのパーセントの値を取得して」コードの書き方が分かりません。
Sub パーセントの値取得()
Dim MyPath As String
Dim MyName As String
Dim OpenFileName As String
Dim n As Long
MyPath = "C:\Documents and Settings\Macro" 'xlsの格納先フォルダ名の指定
MyName = Dir(MyPath & "\*.xls") 'xlsファイルすべてを選択対象に
Do While MyName <> "" 'フォルダ内の全てのファイルを参照するまで処理
OpenFileName = MyPath & "\" & MyName '参照元のエクセルファイルのフルパス
n = FreeFile 'ファイル番号の値を宣言
Open OpenFileName For Input As #n '参照先ファイルを開く
'ここにシート"グラフ"の特定のグラフ「1.」を選択し、
'表示されているパーセンテージの値を取得するコードが書きたい
Close #n 'ファイルを閉じる
'ここにカレントエクセルファイルの指定のセル内に、
'取得した値を入れるコードを書く
MyName = Dir '参照先ファイルをnullに戻す
Loop ’処理を繰り返す
End Sub
(見よう見まねでVBを書いているのでファイル参照のコードも間違っているのかもしれません。。。すみません)
グラフの表示のパーセントから直接値を取得することは不可能なのでしょうか?
自分なりにいろいろ検索してみましたが、グラフの値を直接取得するコードが見当たりませんでした。
かなり説明不足なのかもしれませんが、ご教授のほどよろしくお願いいたします。
|
|