Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


28239 / 76732 ←次へ | 前へ→

【53795】取得した変数を全てセルに表示させるには?
質問  かおり  - 08/2/7(木) 16:30 -

引用なし
パスワード
   たびたびすみません;;
前回データラベルの取得方法について質問させていただいた超初心者です。
(環境はExcel2000です。)
コード表記についてまたまた質問させてください。


アクティブなシートの、特定のグラフの全てのデータラベルの値を取得し、
ラインフィードで分割して値を取得する下記のコードを書いています。

Sub 作成中()

Dim co As ChartObject
Dim pp As Point
Dim DT As Variant
Dim bunrui As String 'ラベルの値を格納
Dim suuchi As String 'パーセントの値を格納

Set co = ActiveSheet.ChartObjects("グラフ 8") '任意のグラフを指定
co.Activate
  For Each pp In co.Chart.SeriesCollection(1).Points
    DT = Split(pp.DataLabel.Caption, vbLf) '改行でラベルの文字列を分割
    bunrui = DT(0)
    suuchi = DT(1)
       
    Range("A265").Select '抽出した文字列を表示するセルの場所を指定
   
   If bunrui <> "" Then
    Do
      ActiveCell.FormulaR1C1 = bunrui
      ActiveCell.Offset(1, 0).Select
      ActiveCell.FormulaR1C1 = suuchi
      ActiveCell.Offset(-1, 1).Select
    Loop Until bunrui <> ""
   End If
  Next
  
End Sub

やりたいこととしては、取得した値を

(例)
    A        B        C
1    4月        5月        6月
2    10%        15%        5%

…のように、全てを表示させたいのです。


上記コードでは「ActiveCell.Offset(-1, 1).Select」で右上のセルに移動し、
If〜ThenとDo〜Loop処理で取得した値を順順に表示させようと思いましたが、
何か勘違いをしているのか、うまくいきません(>_<)。
上記のコードですと、最後のデータラベルの値のみ、
A1、A2に表示して最後にB1にセルを選択。。。で処理が終わってしまいます。
例えば、(例)でラベル「6月」が最後のデータラベルだとすると、A1に「6月」、A2に「5%」と表示され処理が終了します。

なんだか当たり前のことを間違えているような気がして大変お恥ずかしい限りですが、
なにとぞご教授お願いいたします。

何か説明不足の場合はご指摘願います。

0 hits

【53795】取得した変数を全てセルに表示させるには? かおり 08/2/7(木) 16:30 質問
【53798】Re:取得した変数を全てセルに表示させるに... VBWASURETA 08/2/7(木) 17:32 回答
【53815】Re:取得した変数を全てセルに表示させるに... かおり 08/2/8(金) 10:25 お礼
【53826】Re:取得した変数を全てセルに表示させるに... VBWASURETA 08/2/8(金) 12:44 発言
【53829】Re:取得した変数を全てセルに表示させるに... かおり 08/2/8(金) 14:31 お礼

28239 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free