- ベストアンサー
exileのマクロとは?
マイクロソフトのエクセルを勉強しているのですが、そもそも「マクロ」とか、マクロの計算とかやり方がありますが、マクロとはなにをすることなのでしょうか?
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
そのアプリケーションの機能を、「ユーザーが指定した手順通りに実行する」機能を、マクロと言います。 たとえば、10枚のシートすべてに罫線を付ける作業をしなければならないとき、手作業でやると時間がかかりますが、1枚のシートに罫線を付ける作業をマクロで記録しておけば、シートを切り替えて、そのマクロを実行するだけで、簡単に罫線が引けます。 初期のマクロは、キーボードのエミュレーションをする、キーボードマクロが主流でした。キー入力を記録し、それを繰り返し再現できるのです。まさに、ユーザーの手作業での入力を肩代わりするわけです。 そのうちに変数が使えるようになったり、FOR~NEXTなどの繰り返し命令が使えるようになったりと強化され、今ではプログラム言語と変わらないほど多機能になりました。 プログラム言語との違いは、そのアプリが起動していないと使えないことです。あくまで、そのアプリを強化するものなのです。実際にマクロを実行してみればわかりますが、目に見えない誰かが、ユーザーに代わってアプリを操作しているように見えます。 ためしに下のようにしてみてください。かけ算九九の答えがすべて表示されます。 (1)エクセルを起動 (2)Alt+F11キーを押す。 (3)挿入 (4)標準モジュール (5)モジュール1に下のコードを入力(コピーする) Sub kuku() Sheets(1).Select For i = 1 To 9 For j = 1 To 9 Cells(i, j) = i * j Next j Next i End Sub (6)F5キーを押す。 (7)実行 (8)エクセルに切り替える。
その他の回答 (4)
- hallo-2007
- ベストアンサー率41% (888/2115)
簡単に云えば、関数や一般機能では出来ない機能をプログラムを作って 新しく機能を作成する。 といったところでしょうか。とにかく使ってみると便利でしょうがなくなります。 エクセルだけでなくOffice製品(アクセスやOutLookなど)とも連携できます。 簡単な使用方法で 1、新しいブックを作成して、シート名のタブを右クリック、コードの表示をクリック 2、VBエディターが開くので Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 2 Then Cells(Target.Row, 1).Value = Date End If End Sub をコピィして閉じてみてください。 B列に適当に何か入力してEnterすると A列に、今日の日付がはいります。
No.3です。モジュール1にカーソルがある場合は、(7)の手順はいりません。
- okdeath
- ベストアンサー率28% (13/46)
こんにちわ。 マクロとは、プログラムです。VBA(ビジュアルベーシックforアプリケーション)のことで、VB(ビジュアルベーシック)というプログラムを、オフィス用にしたものだったと思います。 関数との違いは、関数だと一回の処理しかできません。 マクロだと、forなどのループを行うことで少しずつ条件を変えた処理を100回でも200回でも出来るのがメリットだと思います。 また、複数の手順を一度の操作で行う、「自動化」もめりっとだと思います。また、セル上の関数では扱えないものも、扱えるようになります。 いいことずくめに見えますが、1つ欠点があり、表の挿入や削除や切り取りを行ったときにデータのセルの位置がずれますよね。(例えばC1のデータを切り取りE1に貼り付けるなど) こんなとき、関数はセルの位置を自動でC1→E1に変更してくれますが、マクロはやってくれないので手動で直す必要があります。 タイトルなどを手がかりに探すようにプログラムすれば解決できるとは思いますが、どうしても無理なとき以外はめんどくさいので、私は関数で解決するようにしています。
Excelにおいて、VBA(Visual Basic for Application)というプログラムで処理をすることを「マクロを使う」と言います。 「マクロ」とは作業手順を並べた処理のことなんです。プログラムは複雑な処理をすることができるので難しいと思われる方が沢山いらっしゃいます。しかし何も複雑なことだけでなく、ちょっとした手順を並べるだけでも「マクロ」として働かせることができます。 例えば、「上書き保存」をした後、Excelを「終了」させるなどの手順を「マクロ」にすることができます。その他、繰り返し行いたい処理を「マクロ」にすることで手間を省くこともできます。選択しているセルに入力された2つ以上続けて入力されている全角を含むスペースを1つの半角スペースに置き換える…など。 やり方は難しくありませんので調べてみてください。