[[20150228072546]] 『貼り付けのマクロ』(ジョニー) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『貼り付けのマクロ』(ジョニー)

 下記、Sheet1は2015年1月の実績を、あらかじめ集計され、降順にセットされた
 表があります。
 この表を積み上げの棒グラフにする必要があり、これを実施すると凡例で照らし
 合わせるも、非常に見にくいため、Sheet1のA2からB6(ベスト5)を、Sheet2のB1
 を基準に貼り付けたいです。

 Sheet1は毎月更新され、Sheet1のA1の月を、Sheet2のA列に探しに行き、貼り付ける
 マクロでご指導お願いします。
 また、下記のSheet1のような表を、積み上げ棒グラフで見やすくする方法があれば
 合わせてご指導おねがいします。

  Sheet1                   Sheet2       
     A        B            A         B    C    D    E    F   
  1 2015年1月 数量        2015年1月   あ  い  う  え  お    
  2 あ      300                    300  290  250  240  230 
  3 い      290     2015年2月
  4 う      250
  5 え      240     2015年3月
  6 お      230
  7 か      190     2015年4月
  8 き      180
  9 く      150
 10  け    120  
 11 こ       90
 12 さ       80 
 13 し       70
 14 す       50
 15 せ       30
 16 そ       10
 17 た        9

< 使用 Excel:Excel2007、使用 OS:Windows7 >


 一例です(グラフは不得意なので、識者さんからの回答をお待ちください)

 Sub Test1()
    Dim ym As Double
    Dim y As Variant
    Dim sh1 As Worksheet

    Set sh1 = Sheets("Sheet1")

    ym = sh1.Range("A1").Value2

    With Sheets("Sheet2")
        y = Application.Match(ym, .Range("A1", .Range("A" & Rows.Count).End(xlUp)), 0)
        If IsError(y) Then
            MsgBox sh1.Range("A1").Text & " がみつかりません"
            Exit Sub
        End If

        .Cells(y, 2).Resize(2, 5).Value = WorksheetFunction.Transpose(sh1.Range("A2:B6"))

    End With

 End Sub

(β) 2015/02/28(土) 11:17


 βさん、ばっちりうまくいきました。
 ありがとうございます。
(ジョニー) 2015/02/28(土) 12:55

 グラフ作るだけならピボットグラフおすすめ。

 Sheet1の範囲を選択、ピボットでグラフを挿入。
 数量を値に、凡例フィールドに日付(「あいうえお」の列のタイトル)を入れる。
 シート上には一覧表のスペースとグラフのスペースがあると思うが、グラフ上で右クリックしてグラフの種類を積み上げに変更。
 一覧表で「列ラベル」にプルダウンマークがついてると思うので、それをクリック。
 値フィルターに「トップテン」というのがあるので、それを選択。
 出てきたフィルター設定で上位5項目に設定。

 これで上位5項目の積み上げグラフが完成。

(1111) 2015/03/02(月) 09:50


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.