見出し画像

【マクロ入門#2】Excelで超基本的なマクロの入力方法

 このブログでは、エクセルのマクロについて、ゼロからコードを書くのではなく、すでに存在するコードを読み、理解し、そして自分の業務に応じて組み合わせる方法を学んでいきます。
 プログラミングの知識がなくても、コードの意味を読み取ることで、業務効率を劇的に向上させることができます。
 目標は、コードを書けるようになることではなく、必要なコードを見つけ、それを自分の目的に合わせて使いこなせるようになることです。
 日々の業務で役立つマクロの活用方法を、一緒に学んでいきましょう。


はじめに

 Excelマクロを利用することで、日々の繰り返し作業を効率的に自動化できます。
 この記事では、ExcelのVisual Basic for Applications(VBA)を使用して、最も基本的なマクロの作成方法を説明します。
 初心者の方でも理解しやすいよう、マクロの基本的な構文と、文字や数字の入力方法、さらにセルへのデータ入力方法を詳しく解説します。


基本的なマクロの構文

 まずは、Excelでマクロを作成する際の基本の構文を紹介します。

Sub マクロ名()
    命令文
End Sub

 この構文で、[Sub] は、サブプロシージャを始めることを意味し、[End Sub] で、そのサブプロシージャを終了します。
 マクロ名は、そのマクロの名前で、命令文はマクロが実行する具体的な操作を指します。

ポイント
・[Sub] と[End Sub]で、命令文を挟む

 これ以降は、実際に命令文のコードの書き方を解説してきます。
 自分がコードを書かなくても、どんなことが書いてあるのか読めるようにしていきましょう。


文字と数字の入力

 マクロ内でデータを扱う場合、文字データと数字データの入力方法が異なります。文字データはダブルクォーテーション(" ")で囲む必要がありますが、数字データはそのまま入力します。

  • 文字の入力例:

Sub ExampleText()
    Range("A1").Value = "こんにちは"
End Sub

 ここで、「こんにちは」は、文字として出力したいので(”こんにちは”)と入力します。

  • 数字の入力例:

Sub ExampleNumber()
    Range("A1").Value = 123
End Sub

 一方、「123」は、数字として出力したいので(123)と入力します。

ポイント
・文字データはダブルクォーテーション(" ")で囲む
・数字データはそのまま入力


セルへの入力方法

 Excel VBAでは、セルへのデータ入力方法として主に2つのパターンがあります。一つ目が、Rangeオブジェクトを使用する方法で、もう一つが、行と列の番号を指定する方法です。

  • Rangeオブジェクトによる指定:

Sub InputRange()
    Range("A1").Value = "テキスト"
End Sub

 この方法では、セルの位置をアルファベットと数字の組み合わせ(A1など)で指定します。

  • 行と列の番号による指定:

Sub InputCells()
    Cells(1, 1).Value = "テキスト"
End Sub

 こちらの方法では、Cells関数を使用して、第一引数に行番号、第二引数に列番号を指定します。この場合、Cells(1, 1)は「A1」セルを指します。

ポイント
・Rangeオブジェクト:Range("A1")
・Cells関数:Cells(1, 1)


※マクロの実行は元に戻せないことに注意

 マクロを実行する時の注意点は、元に戻せないことです。
 Excelでマクロを実行すると、その操作は「元に戻す(Undo)」機能で取り消すことができません。これは、マクロによる変更が直接的にデータに適用され、Excelの通常の操作履歴とは異なるためです。
 したがって、マクロを実行する前には、重要なデータをバックアップするか、新しいワークシートやワークブックでテストを行うことが重要です。

ポイント
・一度、実行したマクロは元に戻せない
・マクロの実行前にバックアップをとる


まとめ

 今回は、基本的な入力方法として、文字と数字の入力とセルの指定方法について紹介しました。
 マクロは非常に強力なツールですが、その使用には注意も必要です。特にデータのバックアップとテストの実施は、安全にマクロを使用する上で欠かせないステップです。ぜひ、少しずつ学んでいきましょう。

 次回は、マクロでの基本の命令について解説してきます。ぜひ、チェックしてみてください。

次回予告
・【マクロ入門#3】Excel VBAの基本概要:オブジェクト・プロパティ・メソッド

この記事が気に入ったらサポートをしてみませんか?