VBA100本ノック 3本目の投稿です。Excelの神髄さんの模範解答はコチラ
問題
画像のように1行目に見出し、A列に№が入っています。
№行数およびデータ行数は毎回変化します。
この表の見出し(1行目)と№(A列)を残して、データ部分のみ値を消去してください。
※シートはアクティブシート

解答
Sub ノック3本目()
Range("A1").CurrentRegion.Offset(1, 1).ClearContents
End Sub
1、2本目で”メソッド”(Select,Copy)を説明していたため、今回は”プロパティ”について軽く説明すべく、この解答としました。

“メソッド”と”プロパティ”の違いが、何となく分かったような気がしまっス!

えぇ…俺は一ミリたりとも分からなかったよ?

・・・・・
Range.CurrentRegionプロパティ
Rangeの”表範囲”を取得できるプロパティ。
※斜めに隣接する範囲も含まれる。
例↓

これ以降もめちゃくちゃ使います。
是非3本目の今、覚えてください。

縦横に繋がってる範囲だけでなく、
ナナメもCurrentRegionに含まれるのね!

そうっスね!!

ちなみにこれって
ナナナナメは含まれるの?

な、ナナナナメは知らないっス…
Range.Offsetプロパティ
■構文
Range.Offset (RowOffset, ColumnOffset)
Rangeをずらせるプロパティ。(雑)
RowOffset…行方向(縦)
ColumnOffset…列方向(横)
行方向(下)に1セルずらす場合↓

数値をマイナスにすることで、左、上にもずらせる。
列方向(左)に1セルずらす場合↓

Range.ClearContentsメソッド
セルの値(数式)を消去するメソッド。
ちなみに似たようなのがめちゃくちゃ多い↓(Clear,ClearComments,ClearFormats etc.)が、
ClearContentsが圧倒的に使用頻度が高い。(それってあなたの感想ですよね?)

気が向いたら覚えましょう。
あとがたり
おはこんばんちは。uぷ主です。
え?「メソッドとプロパティの違いがわからない?」(過去の私)
いやいや…全然別物やんけ!!!…って今なら言えるんですけど…、
ちゃうんですよ。
最初はマクロの記録とか、他の人のコードとか、わからないところをググるじゃないですか。テキトーに。
そしたら、○○メソッドとか、△△プロパティとか、出てくるんですよ。
メソッドもプロパティも、はた目から見たら一緒なんですよ。カタカナなんで。
「ま、とりあえずなんとなく動いたからえっか~」
で、時は過ぎ…2年後…
新人君「先輩!プロパティとかメソッドとかってなんすか?」
主「えっ?おぉ…おぉん…」
あの頃のワイに、ノック1~3本目を見せてあげたいです。
最後までご視聴ありがとうございました。
コメント