• 締切済み

ラベル付き散布図作成マクロ、元データは必ず縦表?

Excel でマクロを使用して散布図にラベルを付ける際に、以下のような説明・例を見つけたのですが http://support.microsoft.com/kb/213750/ja 散布図の元になるデータですが、この説明中にあるようにデータポイントを縦一列に並べないといけないのでしょうか。横に並んでいる状態でしたら無理でしょうか。 説明中の例となっている元データはこのように縦に並んでいます。 A1: Labels B1: X Values C1: Y Values A2: DataPoint1 B2: 12 C2: 5 A3: DataPoint2 B3: 9 C3: 7 A4: DataPoint3 B4: 5 C4: 3 A5: DataPoint4 B5: 4 C5: 8 A6: DataPoint5 B6: 1 C6: 4 この例となっている元データの下の注意書きに「ラベルや値は、この資料に記載されているフォーマットのとおりに配置する必要があります」と書かれています。他にもこのような説明をネット上で見つけましたが、どれも元データは縦列になっています。以下のように元データが横に並んでいる場合に可能な方法はないでしょうか。 A1: Label B1: DataPoint1 C1: DataPoint2 D1: DataPoint3 D1: DataPoint4 E1: Datapoint 5 A2: X Values B2: 12 C2: 9 D2: 5 D2: 4 E2: 1 A3: Y Values B3: 5 C3: 7 D3: 3 D4: 8 D5: 4 ご存知の方、教えていただけましたら幸いです。 宜しくお願いします。

みんなの回答

  • xls88
  • ベストアンサー率56% (669/1189)
回答No.1

>散布図の元になるデータですが、 >この説明中にあるようにデータポイントを縦一列に並べないといけないのでしょうか。 ”サンプルマクロを使用するには”という事です。 >横に並んでいる状態でしたら無理でしょうか。 データ表にあったようにコードを編集すれば大丈夫です。 サンプルマクロでは A列にあるラベルデータを取得するため、列固定で行をインクリメントしています。 For Counter = 1 To Range(xVals).Cells.Count ActiveChart.SeriesCollection(1).Points(Counter).HasDataLabel = True ActiveChart.SeriesCollection(1).Points(Counter).DataLabel.Text = _ Range(xVals).Cells(Counter, 1).Offset(0, -1).Value Next Counter 本質問の提示例のように 1行目にラベルデータがあるのなら行固定で列数をインクリメントします。 For Counter = 1 To Range(xVals).Cells.Count ActiveChart.SeriesCollection(1).Points(Counter).HasDataLabel = True ActiveChart.SeriesCollection(1).Points(Counter).DataLabel.Text = _ Range(xVals).Cells(1, Counter).Offset(-1, 0).Value Next Counter 下記のように Range(xVals)の行数を判定してIf文で分岐処理することもできます。 (コードは動作未確認です。上手く動かなければデバッグしてください。) For Counter = 1 To Range(xVals).Cells.Count With ActiveChart.SeriesCollection(1).Points(Counter) .HasDataLabel = True If Range(xVals).Rows.Count = 1 Then .DataLabel.Text = _ Range(xVals).Cells(1, Counter).Offset(-1, 0).Value Else .DataLabel.Text = _ Range(xVals).Cells(Counter, 1).Offset(0, -1).Value End If End With Next Counter

higashikami
質問者

お礼

お礼遅れましてすみません。丁寧な回答いただきまして、ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ラベル付き散布図の作り方

    Excelでラベル付き散布図を作りたいと思っています。 セルA行にデータの名前、B行にX軸のデータ、C行にY軸のデータがあります。通常であればBとC行を選択して散布図を指定すれば、自動的に散布図は出来ます。しかし、ラベルにしたいのは各データの名前なので、ラベル用にとA行を混ぜるとどうしても作図がうまく行きません。 やり方として、例えばここにその方法が書いてありますが、データが何百とあったら実際やっていられません。 http://software.ssri.co.jp/statweb2/tips/tips_6.html 何か自動で出来る他の方法はないでしょうか。

  • 散布図について

    以前bantamさんが質問していた(No46347)のですが、それでは解決しなかったので質問します。 EXCELを使って,散布図で、ラベルを表示したいのです。 たとえば、   ラベル  X   Y   a    200   250   b    150   120   c    300   278   d    243   200   e    120   100 のようなデータを散布図にすると、「ラベルを表示する」を選択すると、上のラベルではなく、Xの値が表示されます。「値を表示する」を選択するとYの値が表示されます。そうではなく、ラベルを表示したいのです。 やはり、テキストボックスなどで表示するしかないのでしょうか? ほかのソフトがあればそれでもいいのですが。

  • エクセル散布図 個人データにひもづく2個データ表示

    エクセル2007で散布図で 個人データにひもづく 2個データを表示プロットして 表示させるのに悩んでいます データ例 A            B             C 氏名      毎月もらってるお小遣い  今月中旬で使ったお小遣い AAAさん      500円              300円 BBBさん     1000円              500円 CCCさん      800円              200円 というデータがあったとして 散布図 X軸=A  Y軸=B とういう2軸で2列の散布図はできました (ここまではネットで探しながら・・・) しかし X軸=B  Y軸=C  プロット=A 要するに・・・X軸「毎月もらってるお小遣い」 Y軸「今月中旬で使ったお小遣い」 プロット「氏名」 プロットが「氏名」(個人)にひもづいている散布図を作りたいのですが??? 判りません (こちらは・・ネットを一生懸命探したのですが・・いたらず・・) どうか やり方を教えてください よろしくお願いいたします

  • 散布図のラベル位置について

    EXCEL2000を使っています。 散布図のグラフを作りました。ラベルを表示させていますが、微妙な位置の調整はできるのでしょうか? 聞くところによるとLotus123ではラベルのX,Yの値を指定できるようなのですが・・・。 VBAでも構わないので、教えてください!

  • Excelでの散布図作成について。

    Excelでの散布図作成について。 「あ」「い」2種類の条件があります。  「あ」:20以下の正数字  「い」:100以下の正数字 「あ」がいくつで「い」がいくつの組み合わせの時、(たまたま?)良結果であった。 「あ」がいくつで「い」がいくつの組み合わせの時、(たまたま?)悪結果であった。 これらを散布図にして良結果の出る確率を高くなるよう条件を絞り込みたいです。 A列:良結果の「あ」 B列:Aの時の「い」(良結果) C列:悪結果の「あ」 D列:Cの時の「い」(悪結果) 上の様に入力し散布図を作成すると思ったような図ができません。 X軸に「あ」を、Y軸に「い」を、そしてそれぞれの点々を良結果と悪結果で色を変えたいのです。 どのようにすればできますでしょうか? 2007です。

  • Excelの散布図のことで質問があります

    散布図のことでわからないことがあり質問しています。 データは、以下のような感じです。 名前 身長 体重 Aさん 173 53 Bさん 165 65 Cさん 172 80 Dさん 157 45 Eさん 163 63 Excel2002を使用して、X軸を身長、Y軸を体重に設定し、散布図を作成しました。 それに加えて、描かれたポイントに名前(例えばAさん)の行を反映させたいのですが、方法がわかりません。 回答よろしくお願いします。

  • エクセルの散布図

    ラベル付きの散布図を作成したいのですが、ちょっとやりかたがわからなくて、困っています。 要するに データ名  x座標   y座標 ----------------------------- データ1  1.55345  -2.10188 データ2  0.93827  -0.37629 データ3  0.73248  -1.28221 データ4  -0.73542  -0.92798 データ5  1.88498  -1.54822 データ6  1.88733  -2.28795 データ7  0.50953  -0.5687 で、x, y座標の点の横あたりにデータ名も表示させたいのです。 エクセルのところで質問させてもらいましたが、上記の事ができればソフトはエクセルでなくてもかまいません。 どなたかご教授をよろしくお願いします。

  • ExcelでIF関数を用いたときの散布図のエラー

    win7 64bit+Excel 2010を使用しています. Excelにて、IF関数を用いて次のように何行か入力するとします. =IF(A1="","",A1+B1) =IF(A2="","",A2+B2) これをC列に出力し,D列に任意のデータを入力します. そして,C列をx軸に,D列をy軸にして散布図をとったときに,C列の選択したセルの最後の行が空欄になっていると,A列をx軸にとった散布図になってしまいます. 入力するデータ数は定まっていないため,余裕をとって散布図表示ができるようにしたいのですが, 解決できる方法がありましたら,是非,お教え願います.

  • Excelの散布図

    評価 点数 金額  A 100 500,000  A  98 450,000  A  97 460,000  B  95 430,000  B  92 450,000  C  90 400,000 このようなデータを評価(A~C)を色分けした散布図にしたいのですがうまくいきませんでした。 できないのでしょうか??

  • Excel 2010での散布図の作成方法

    Excel 2010で相関を見る散布図を作りたいのですが、うまくいきません。 こちらのサイトで例に出ているような、横軸が系列1で縦軸が系列2の散布図を作りたいのですが、 http://hitorimarketing.net/tools/correlation-analysis.html サイトに書かれている、縦2列のデータを見出しを除き選択→挿入タブの散布図をクリック という方法では、2系列のデータなのに1系列の(横軸がデータ数・縦軸が数値の)散布図になってしまいます。 Excelに詳しい方、教えてください。

専門家に質問してみよう