徳山 豪 東北大学情報科学研究科 システム情報科学専攻 情報システム評価学分野 情報基礎A マクロ作成 徳山 豪 東北大学情報科学研究科 システム情報科学専攻 情報システム評価学分野
マクロを書くための準備 表示>ツールバー>Visual Basic コントロールツール ボックス Visual Basic エディタ マクロ記録ボタン マクロ実行ボタン 表示>ツールバー>Visual Basic
マクロ作成 Sheet1へA1からA10まで数字を入力 マクロ作成(操作の記録による方法) ツールバーの「マクロ記録ボタン」を押す B1にA1~A10の合計を求める ツールバーの「記録終了ボタン」を押す
マクロの実行 Sheet2へA1~A10まで数値を入力 ツールバーの「マクロ実行ボタン」を押してマクロを実行させる 実行対象のマクロを 選んで実行
マクロの内容 (Visual Basic言語で書かれている) Sub macro1() ' 'マクロ記録日 : 2006/6/5 ユーザー名 : xxxxxx Range("B1").Select ActiveCell.FormulaR1C1 = "=SUM(RC[-1]:R[9]C[-1])" End Sub
選択したセルにマクロの結果を出力:合計 Visual Basic エディターに直接マクロを書く Sub goukei() ActiveCell.FormulaR1C1 = "=SUM(RC[-1]:R[9]C[-1])" End Sub
合計、平均、最大値を求めるマクロ A1からA10まで数字を入力 マクロ作成(操作の記録による方法) ツールバーの「マクロ記録ボタン」を押す B1にA1~A10の合計を求める B2にA1~A10までの平均を求める B3にA1~A10までの最大値を求める ツールバーの「記録終了ボタン」を押す
マクロの内容 Sub 合計、平均、最大値() ' ‘ マクロ記録日 : 2006/6/5 ユーザー名 : xxxxx ‘ マクロ記録日 : 2006/6/5 ユーザー名 : xxxxx Range("B1").Select ActiveCell.FormulaR1C1 = "=SUM(RC[-1]:R[9]C[-1])" Range("B2").Select ActiveCell.FormulaR1C1 = "=AVERAGE(R[-1]C[-1]:R[8]C[-1])" Range("B3").Select ActiveCell.FormulaR1C1 = "=MAX(R[-2]C[-1]:R[7]C[-1])" End Sub
選択したセルにマクロの結果を出力 :合計、平均、最大値 挿入>標準モジュール Sub keisan() Dim row As Integer Dim col As Integer row = ActiveCell.row col = ActiveCell.Column Cells(row, col) = "=SUM(RC[-1]:R[9]C[-1])" Cells(row + 1, col) = "=AVERAGE(R[-1]C[-1]:R[8]C[-1])" Cells(row + 2, col) ="=MAX(R[-2]C[-1]:R[7]C[-1])“ End Sub