とりあえずセルに自動でデータを入力できるようになりたい。
このページでは、こんな悩みを解決するために、VBA上でセルにデータを入力する方法3つをご紹介していきます。
初心者用に画像を使って解説していきますので、ぜひ最後までご覧ください。
VBAを使用できる環境を整えておく
実際のスキル紹介に入る前に、まずはVBAを使える環境がなければ話になりません。
というわけで、まだ一切VBAを使ったことがないという方は、まずは以下の記事を参考に環境構築&テストプログラムの実行までをやってみましょう。
エクセルマクロ(VBA)の始め方!初心者向けに画像を使って詳細解説
セルにデータを入力する方法3つ
それでは環境構築が終わったところで、実際のスキル紹介に入っていきましょう。
◆セルにデータを入力する方法①:コード中に直接指定する
例えば、A1セルに test という文字を入力しようとする際、VBAでは以下のように記入します。
Range(“A1″)=”test”
また、文字列ではなく数字を入力する場合は
Range(“B1”)=1
という形で記述します。
要は文字列なら””で囲ってあげる、数値ならそのまま記入すればOKというわけです。
実際のプログラムをご紹介します。
非常に簡単ですね。
このプログラムを実行してみましょう。
(実行方法は「開発タブ」⇒「マクロ」⇒「input_cellを選択」⇒「実行」です。)
すると以下の結果が出力されました。
問題なく実行できていますね。
以上がコード中に直接データを記入する方法でした。
◆セルにデータを入力する方法②:インプットボックスを使用する
先ほどの例だとプログラムを実行した際に必ず同じデータが入力されてしまうわけですが、ユーザーが毎回入力する内容を変えたいときもありますよね。
そんなときはインプットボックスを使用すると便利です。
インプットボックス?なにそれ?
という方も安心してください。
実例をお見せします。
以下がインプットボックスを使用した例です。
インプットボックスを使用するには、上の画像のような感じで
入力したいセル名=InputBox(“何かしらのメッセージ”)
という形でコードを書いておけばOKです。
こいつを実行すると以下のようなWindowが出現します。
この入力欄にデータを入力すれば、コード中で指定したセルに同じデータが反映されます。
(下の画像はすでにデータを入力した後の状態です。)
この状態でOKを押してみましょう。
先ほど入力したデータがセルにしっかりと反映されていますね。
以上がインプットボックスを使って記入する方法でした。
◆セルにデータを入力する方法③:他のセルのデータをコピーする
最後はすでに記入されている他のセルのデータをコピーする場合です。
インプットボックスで入力してもらったデータを他の場所にも反映させたいときなんかによく使います。
実際にやってみましょう。
今回は先ほど記入したA1セル、B1セルをA3セル、B3セルにそれぞれコピーしてみます。
以下がそのサンプルコードです。
やり方は非常に簡単で、それぞれのセルの場所を=で結ぶだけですね。
(順番にはお気を付けください。これから記述したい方が左、コピー元が右です。)
こいつを実行すると以下の結果が得られました。
こちらも問題なくデータが反映されていますね。
というわけで、以上がVBA上でセルにデータを記述する方法でした。
おわりに
というわけで今回は、VBA上でセルにデータを入力する方法3つをご紹介しました。
基本中の基本ですので、まずはしっかりとマスターしておきましょう。
このように、私のブログではエクセルスキルはもちろん、様々なプログラミングスキルを紹介しています。
今は仕事中で時間がないかもしれませんが、ぜひ通勤時間中などに他の記事も読んでいただけると嬉しいです。
⇒興味をもった方は【ヒガサラ】で検索してみてください。
確実にスキルアップできるはずです。
最後に、この記事が役に立ったという方は、ぜひ応援よろしくお願いします。
↓ 応援ボタン
それではまた!
コメント