ExcelVBA

【Excelマクロ入門】VBAでセルに値を代入・値をクリアする

悩んでる人
セルに値を入力(代入)したり、削除する方法は?
そんなことも知らないのか?簡単だからついてこい!
Mr.マクロン

セルに値を入力(代入)する

セルに値を入力したり、値を取得するにはValueプロパティを使います。




【基本構文】

Rangeオブジェクト.Value = 値
※.valueは省略可能




【使用例】


コードはこんな感じです。

Range("D1")="クラス"  →文字列の入力はダブルクォーテーションで囲って代入
Range("D2:D5") = "1組"  →D2~D6セルに1組を代入
Range("D6:D9") = "2組"  → D6~D9セルに1組を代入
Range("F1") = "学級委員長"  → F1セルに1組を代入
Range("G1") = Range("B2")  → B2セルの値をG1セルに代入



値をクリアする

次は、セルに入力されている値や数式をクリアする方法を解説します。

クリアするといっても、何をクリアしたいかによって使うコードは変わります。4種類を以下の表にまとめました。



メソッド説明
Clearすべてクリア
ClearContents数式と値をクリア
ClearFormats書式のみクリア
ClearComentsコメントのみクリア


それでは、処理の違いを確認していきましょう。



【マクロ実行前】



すべてクリアしたいときは「Clear」


【記述例】

Range("B2:F10").Clear  ’B2~F10セルをすべてクリア


Mr.マクロン
「数式、値、書式」何もかもがクリアされるぞ。

※ Range("B2:F10")=””  という書き方でも結果は同じです。自分のお好みで。



値や数式だけをクリアしたいときは「 .ClearContents 」

【記述例】

Range("B2:F10").ClearContents ’ B2~F10セルの値と数式をクリア



Mr.マクロン
「入力されている値や数式」はすべてクリアされるぞ。実務では一番よく使うかもしれないな。




書式だけをクリアしたいときは「 .CleaFormats 」

【 記述例 】

Range("B2:F10").ClearFormats   ’ B2~F10セル書式をクリア



Mr.マクロン
「設定されている書式」はすべてクリアされるぞ。


コメントだけをクリアしたいときは「 .CleaComments 」

【 記述例 】

Range("B2:F10").ClearFormats   ’ B2~F10セルのコメントをクリア


Mr.マクロン
設定されている「コメント」はすべてクリアされるぞ。


「クリア」と「削除」は違う

「クリア」とよく似た言葉に「削除」があります。



VBAにおける「クリア」「削除」の違いは押さえておきましょう

「クリア」…Celarメソッド。セルはそのままに、値や書式、コメントなど入力値のみを消す処理
「削除」…Deleteメソッド。セル事態を削除する。セルそのものが消えるので上下左右方向にセルが移動することになる。



クリアの注意点

クリアで一度消去した値や書式は元に戻すことができません。
クリアメソッドを実行する前は、一度保存しておく癖をつけておきましょう。





Mr.マクロン
今回紹介した「セルの値入力とクリア」はマクロの基本だ。記事をよむだけでは上達しない。実際に手を動かすのが一番の近道だ。






\ せっかく勉強するならVBAの資格を取ろう! /

文系にもオススメ

【合格体験記】エクセルマクロの資格に一発合格する方法

続きを見る

  • この記事を書いた人
  • 最新記事

RYO

福岡出身34歳|10年越え中堅サラリーマン|WEB制作や Excel,Accessなどが得意|趣味のカメラは歴10年|動画編集も得意|保有資格|MOSマスター|SEO検定全級(1〜4級)|ITパスポートなど|現在、自身の知見や趣味に関する記事執筆をコツコツと行っている。

-ExcelVBA
-