【ExcelVBA】Columnsプロパティを使って列操作する方法を徹底解説!

こんにちは、フリーランスエンジニア兼ライターのワキザカ サンシロウです。

皆さんは、VBAで列を指定して処理を作る方法を知っていますか?

Excelは行・列でできているため、データを操作するときに列の操作はよく使います。

そこで今回は、

・列の操作をするためのColumnプロパティとは?

といった基礎的なことから、

・Columnsプロパティの具体的な使い方

・Columnsプロパティ・Columnプロパティの違い

・合わせて覚えると便利な列操作方法

といった応用的な方法まで、徹底的に解説します!

目次

Columnsプロパティとは

はじめに、Columnsプロパティの使い方について簡単に解説します。

Columnsプロパティは、次のように書くことで列を指定することができます。

使い方:

Columns(列番号 or 列名)          '1列指定
Columns("開始列名:終了列名")    '複数列指定

列番号には1、2、5のように数値を入力し、列名にはA、B、Eのようにアルファベットの列名を入れます。

このように、簡単に列を指定した処理を作ることができます。

Columnsプロパティをつかったサンプルコード

次に、サンプルコードをもとに、具体的な使い方について解説します。

今回は、列をコピーするサンプルを用意しました。

実行前:

サンプルコード:

Sub Test()
  Columns("A:C").Copy Columns("E")
End Sub

実行後:

「Columns("A:C")」でA ~ Cの列をコピーし、貼り付け先「Columns("E")」を指定してE列からデータを張り付けています。

このように、列を指定した処理を書くことができるのが、Columnsプロパティの特徴です。

Columnsプロパティ・Columnプロパティの違い

ここまでColumnsプロパティの使い方について解説してきました。

Columnsプロパティに似ているプロパティに、Columnプロパティがあります。

使い方について混乱する方が多いので、簡単に違いについて解説します。


・Column :列を取得するプロパティ
・Columns:列を指定して操作するプロパティ

たとえば、B2セルの列を取得する場合は、次のように書きます。

サンプルコード:

Sub Test1()
  Debug.Print "B2セルの列番号:"; Range("B2").Column
End Sub

実行結果:

B2セルの列番号: 2 

このように、セルの列番号を簡単に取得することができます。

合わせて覚えると便利な列操作方法

ただ、ここまで読んで次のように思っている方もいるのではないでしょうか。

「なるほど、列の指定をするときはColumnsプロパティを使えばいいのか。で、どうやって列を操作するんだろう・・・?」

それぞれ、次のメソッドで操作することができます。


・Insert:挿入
・Copy:コピー
・Clear:クリア
・Delete:削除

具体的な使い方をセットで覚えたほうが覚えやすいので、合わせて覚えておくのがおすすめです!

挿入・コピー・クリア・削除については以下で詳しく解説しているので、気になる方は見てみてくださいね!


【ExcelVBA入門】列をコピーするためのCopyメソッドの使い方とは
更新日:2024年5月6日

【VBA入門】行・列の削除とクリアをする方法
更新日:2024年5月6日

まとめ

今回は、列を指定するためのColumnsプロパティの使い方について解説しました。

行・列でデータができているExcelだからこそ、列の操作は良くします。

使い方も簡単なので、ぜひ使ってみてくださいね!

この記事を書いた人

【プロフィール】
DX認定取得事業者に選定されている株式会社SAMURAIのマーケティング・コミュニケーション部が運営。「質の高いIT教育を、すべての人に」をミッションに、IT・プログラミングを学び始めた初学者の方に向け記事を執筆。
累計指導者数4万5,000名以上のプログラミングスクール「侍エンジニア」、累計登録者数1万8,000人以上のオンライン学習サービス「侍テラコヤ」で扱う教材開発のノウハウ、2013年の創業から運営で得た知見に基づき、記事の執筆だけでなく編集・監修も担当しています。
【専門分野】
IT/Web開発/AI・ロボット開発/インフラ開発/ゲーム開発/AI/Webデザイン

目次