Locked History Actions

VBA

VBA

  • VBA : Visual Basic for Applications [ Wikipedia ]

シート名を読み込んでセルに表示

  • 標準モジュールに以下のような関数を追加
  • Function SheetName()
       SheetName = ActiveSheet.Name
    End Function
  • その後、セル内に =SheetName() と入力すると、セルにシート名が表示される。

似たようなグラフを範囲だけ変えて大量に作る

  • "A1:B3", "A6:B8", "A11:B13" にあるデータ(それぞれの範囲は2行3列)から3つのグラフ(散布図)を作る。グラフの位置は、それぞれの範囲の右隣りとし、グラフの高さはそれぞれの範囲の 1.5 倍、グラフの幅はそれぞれの範囲の 2 倍とする。
  • VBA_AddGraphs.png

  •  

  • 標準モジュールに以下のようなマクロを追加
  • Sub AddGraphs()
    
        For Each RangeStr In Array("A1:B3", "A6:B8", "A11:B13")
            ActiveSheet.Shapes.AddChart.Select
            ActiveChart.ChartType = xlXYScatter
            ActiveChart.SetSourceData Source:=Range(RangeStr)
            ActiveChart.ChartArea.Top = Range(RangeStr).Top
            ActiveChart.ChartArea.Left = Range(RangeStr).Left + Range(RangeStr).Width
            ActiveChart.ChartArea.Height = Range(RangeStr).Height * 1.5
            ActiveChart.ChartArea.Width = Range(RangeStr).Width * 2
        Next
        
    End Sub
  • Alt + F8 でマクロ実行のウィンドウを開き、AddGraphs マクロを実行。

  • VBA_AddGraphs_Macro.png