2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ExcelVBA備忘録

Last updated at Posted at 2020-07-02

「たった1秒で仕事が片付くExcel自動化の教科書」を読んで、ドッグイア―したところを記載。

#設定
1. 変数の宣言を強制 & 自動構文チェックなし
・VBE起動>ツール>オプション>編集タブ
・「自動構文チェック」を外す
 ⇒構文に不備がある度に警告が出現するのを防ぐ
・「変数宣言を強制する」にチェックを入れる
 ⇒変数名の打ち間違い等の特定を容易にする
・OKで閉じる
※次回設定変更するまで反映される。
image.png

2. Excel画面更新の停止
画面が頻繁に切り替わるマクロの場合、Falseにすると高速化する。
Application.ScreenUpdating = False

#構文
1. With構文
一括で指定したい場合に用いる。
下記の場合、「Re.」を「.」入力するだけでOK。

Sub test()

Dim i As Integer
Dim Re As Object '正規表現=Regular expressions
Set Re = CreateObject("VBScript.RegExp")  '正規表現オブ

With Re
   For i = 5 To Cells(Rows.Count, 1).End(xlUp).Row '最終行取得
        .Pattern = "ABC"  '検索したい文字列を定義 
        .Global = True 'True:文字列全体を検索
         Cells(i, 7) = .Replace((Cells(i, 7).Value), "")
   Next i
End With

2. Offset
Offsetはセルの移動
・書式
 Rangeオブジェクト.Offset(行, 列)
 RangeオブジェクトをOffsetに指定した分だけ移動させる。
例)
 Range("A1:D5").Offset(0, 2).Select

最終行、最終列取得

Dim  m, n As Integer
    n = Cells(Rows.Count, "B").End(xlUp).Row
   'B列の最終行を取得
    m = Cells(2, Columns.Count).End(xlToLeft).Column
   '2行目の最終列をす
2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?