Quantcast
Channel: なか日記
Viewing all articles
Browse latest Browse all 848

車輪の再発明。ExcelのセルをA1に揃える+αのマクロを書いた

$
0
0

ネタかどうかは読んだ人の判断にお任せするとして、久しぶりにVBAのコード書きました。

タイトルにある通り、同じフォルダにあるExcelファイルの全シートをA1セルに揃えるってやつです。

ついでに、「拡大率を100%に揃える」処理も追加しました。

f:id:nakaji999:20160324205158p:plain

コード

適当に標準モジュールにでもコピペして使って下さい。

どうでも良いことですが、私はVBA書くときにメソッド名に日本語使うのが癖になってます。

OptionExplicitPrivateSubセルをA1にセットする(sheet As Worksheet)
    
    sheet.Select

    sheet.Range("A1").Select

    ActiveWindow.ScrollColumn =1
    ActiveWindow.ScrollRow =1EndSubPrivateSub拡大率を100パーセントにする(sheet As Worksheet)
    
    sheet.Select

    ActiveWindow.Zoom =100EndSubPrivateSub先頭のシートを選択した状態にする(wb As Workbook)
    
    wb.Sheets(1).SelectEndSubPrivateSub全てのシートを整備する(wb As Workbook)Dim sheet As Worksheet
    
    ForEach sheet In wb.Sheets
        セルをA1にセットする sheet
        拡大率を100パーセントにする sheet
    Next先頭のシートを選択した状態にする wb
    
EndSubSubフォルダ配下の全xlsxファイルを整備する()

    Application.ScreenUpdating =FalseDim wb As Workbook
    Dim file AsString
    file =Dir(ThisWorkbook.Path &"\*.xlsx")Do
        Debug.Print file
        
        Set wb = Workbooks.Open(ThisWorkbook.Path &"\"& file)DoEvents全てのシートを整備する wb
        
        wb.Save
        wb.CloseSet wb =Nothing
        
        file =DirLoopUntil file =""
    
    Application.ScreenUpdating =TrueEndSub

まとめ

これで納品前の作業が捗りますね。短時間で精度の高いアウトプットを得ることができます。生産性は大幅にアップ。すばらしい。

でもね、これって本当に必要なこと?

おしまい。


Viewing all articles
Browse latest Browse all 848

Trending Articles