Open1

VBAまとめ_20241202

rg_4232rg_4232

初めに

  • ひとまず詰まったコマンドをメモしていく

コード集

  • 変数定義(define, function, letみたいなもの)

    • よく使う関数に名前を付けたい場合に利用
    Set XXX
    
  • シート追加 (sheets.add()メソッド)

    • 内容

      Sheets.Add([Before], [After], [Count], [Type])
      
    • 応用

      ' 利用ワークブックを指定 
       Set wbDest = ThisWorkbook
      ' シートを追加
       Set wsDet = wbDest.Sheet.Add(after:= wbDest.Sheets(wbDest.Sheets.Count))
      
      • 処理途中における、画面の更新アラートをOFFにする
      Application.ScreenUpdating = False
      Application.DisplayAlerts = False
      
  • 全cellから最終行を取得する

    • ただの.Cells.Find~や、End(xlup).Rowだと空白行が途中で挟まってしまうと取得が途中で終わってしまうのでオプション指定。
        Set wbDest = ThisWorkbook
        Set wsDest = wbDest.Sheets.Add(After:=wbDest.Sheets(wbDest.Sheets.Count))
        Worksheets("A").Cells.Find(
          What:="*"., _
          After:= 
          LookIn:= xlFormulas, _
          LookAt:= xlPart, _
          SerchOrder:= xlByRows, _)
      
  • Sheet結合

    • 各シートを右から左に結合していき,Margeする。
    • Worksheet.Cells(Worksheet.Rows.Count, 1).End(xlUp).Rowの場合、一番左cellが空白かつ他のcellにデータが入っているとその行を抜かしてしまうため、.Cell.Findで対応する。
      Set ws = Thiswork
      For i = ThisWorkBook.Sheets.Count To 1 Step -1