VBA(マクロ) PR

Excel VBA(マクロ)「セルの範囲に配列の値を入力する方法」について超簡単解説!超初心者でもできるマクロ!

記事内に商品プロモーションを含む場合があります

はじめに

Excelはデータ管理において非常に強力なツールですが、
特に大量のデータを扱う際、効率的な入力方法が求められます。
Excel VBA(Visual Basic for Applications)を使えば、
配列のデータをセルの範囲に一括で入力し、
作業の速度を大幅にアップさせることが可能です。
この記事では、Excel VBAを使ってセルの範囲に
配列の値を入力する方法
について、丁寧に解説します。

初心者でも理解できる様に
丁寧に説明していきます!

Excel VBAとは?

Excel VBAは、Excelの機能を拡張するプログラミング言語です。
VBAを利用することで、繰り返し行う作業を自動化し、
複雑なタスクを簡単にこなせるようになります。
VBAを学ぶことで、作業の効率が大幅に向上します。

セルの範囲に配列の値を入力する方法

Excel VBAでは、Rangeオブジェクトと配列を使用して、
指定した範囲のセルに配列の値を一括で入力できます

以下に、基本的なステップを紹介します。

ステップ1: VBAエディタを開く

  1. Excelを開き、「開発」タブをクリックします。
  2. 「Visual Basic」アイコンをクリックしてVBAエディタを開きます。

ステップ2: 新しいマクロを作成

  1. VBAエディタで、「挿入」メニューから「モジュール」を選択します。
  2. 新しいモジュールウィンドウが開きます。

ステップ3: マクロを記述

例として、2×2の配列データをセル範囲”A1:B2″に
入力するマクロを以下に示します。

Sub InputArrayIntoRange()
    ' 配列データを定義します。
    Dim dataArray As Variant
    dataArray = Array(Array("値1", "値2"), Array("値3", "値4"))
    
    ' 配列データをセル範囲に入力します。
    Range("A1:B2").Value = dataArray
End Sub

このコードでは、配列を定義し、Rangeオブジェクトの
Valueプロパティを使って、指定した範囲の
セルに配列の値を一括で入力しています。

ステップ4: マクロを実行

  1. VBAエディタで「実行」メニューをクリックし、
    「サブルーチンの実行」を選択します。
  2. 「InputArrayIntoRange」という名前のマクロを選択し、
    「実行」ボタンをクリックします。

実行後、指定した範囲のセルに配列の値が
一括で入力されていることがわかります。

マクロの説明

  • Sub InputArrayIntoRange():
    特定のセル範囲に配列の値を一括で入力するための
    新しいマクロを定義しています。
  • Dim dataArray As Variant:
    配列を格納するための変数を宣言しています。
  • dataArray = Array(Array("値1", "値2"), Array("値3", "値4")):
    2×2の配列データを定義しています。
  • Range("A1:B2").Value = dataArray:
    指定した範囲のセルに配列の値を一括で入力します。

注意点

  • 配列のサイズと範囲のサイズ:
    入力する配列のサイズが、指定するセル範囲のサイズと
    一致していることを確認してください。
  • データの型:
    配列に入力するデータの型が、セルに入力する
    データ型と一致しているかを確認してください。

まとめ

Excel VBAを使用してセルの範囲に配列の値を一括で
入力する方法をマスターすれば、大量のデータ処理でもミスを減らし、
効率的に作業を進めることができます

この記事で紹介した方法を実践し、Excel VBAのスキルを一段と高めましょう。

これからも一緒に学んでいきましょう!

【お使いのパソコンにExcelをインストールする】

created by Rinker
¥14,899 (2024/12/23 20:26:25時点 楽天市場調べ-詳細)
マイクロソフト Excel 2021

【オススメExcel書籍はこちらから購入可能!】

created by Rinker
¥1,738 (2024/12/23 21:53:02時点 楽天市場調べ-詳細)

この記事を書いている人

◉てるパパ(telpapa)
本業でExcelを駆使して業務改善を行う
30代会社員