見出し画像

【Day34】文系オタクのエンジニア道~セルの操作②~

こんにちは
安田です

やばいですが、やばくない・やばくない・やばくない
(ネガティブワード1つにつき、打消ワードを3つ)

はい、最近VBA学習が滞っていて
申し訳ありません
合格への黄色信号が・・・
と言っても始まらないので
学習を進めていきます


Endプロパティ

セルの範囲に値が代入されている時
Ctrlキーと矢印キーを押すと
その代入されている最終のセルにアクティブのセルが移動します

この操作をEndモードと呼びます
書式は次の形です

基準となるセル. End(方向)

方向
上:xlUp
下:xlDowm
左:xlToLeft
右:xlToRight

Sub test()
    Range("A1").End(xlDown).Value = 100
End Sub
A7に100が代入されています

ブランクのセルがある場合

上記は代入されているセルにブランクがなかったので
End(xlDown)
でアクティブセルになります

A4のセルがブランクになっているのでxlDownでは最終セルにいかない

ワークシートの一番下のセルから
上方向に向かってEndモードを実行させていきます

104万!

ワークシートの一番下のセルは
Cellsを使います

Cells(行の総数, 列位置)

Sub test1()
    Cells(Rows.Count, 1).End(xlUp).Value = 100
End Sub

CurrentRegionプロパティ

セルに値が代入されている時
Ctrl + Shift + * を押すと
アクティブセルを含むひとかたまりのセル範囲が選択されます

分かりやすくすべてのセルに100といれています
Sub test2()
    Range("A1").CurrentRegion.Value = "オラオラオラ"
End Sub
オラオラに変わりました

まとめ

プロパティはいろんなところで使えるようになると便利だなと思います
問題演習は別途で進めていきます

VBAマスターに俺はなる

最後まで読んでいただき
ありがとうございます
安田

マガジンにまとめてありますので
よかったらそちらも御覧ください

https://note.com/wata1220/m/m28c1c7552e28


この記事が気に入ったらサポートをしてみませんか?