|
▼かおり さん:
こんにちは。
見た感じから多分予測してましたが、
念のために、以下のソースをデバックして見せて頂きました。
(これ前回質問されてますよね?その続きとか書いておいた方が良いですよ。グラフ作るのにちょっと時間掛かりました^^;)
>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
で、問題は
> Range("A265").Select '抽出した文字列を表示するセルの場所を指定
これです。
固定の位置になってますから全部上書きされます。
ここでずれてるイメージだったかも知れませんが
> ActiveCell.FormulaR1C1 = bunrui
> ActiveCell.Offset(1, 0).Select
> ActiveCell.FormulaR1C1 = suuchi
> ActiveCell.Offset(-1, 1).Select
ここは同じセルを上下されているだけです。
横にずらせれば見えるはずなので
> Range("A265").Select '抽出した文字列を表示するセルの場所を指定
を
Y = Y + 1
ActiveSheet.Cells(265, 1 + Y).Select '抽出した文字列を表示するセルの場所を指定
にするだけで見れると思いますよ。
|
|