4月
20
excelでシート一覧を出力するVBA
excelファイルを開いてみたら大量のシート…こんなことよくある。
悲しいけどよくある、しかし落ち込んでは仕事が進まないのでシート一覧を出力して、どこになにがあるのかを整理する!
Sub シート一覧() Dim i As Long For i = 1 To Sheets.Count Range("A" & i).Value = Worksheets(i).Name Range("B" & i).Value = "=HYPERLINK(""#'""&A" & i & "&""'!A1"")" Next i '幅の修正 Columns("A:B").AutoFit End Sub
とりあえずシート名とA1セルにジャンプするハイパーリンク。かなり投げやりだけど飛べるのでよしとする(シート名が日本語でもOK)
VBAはあんまり書いたことがないので、苦手です。ほとんどを関数のCONCATENATEであんちょこするのが好き。
VBAエディタの開き方~使い方
- Alt+F11
- Alt+I→M
- 記述
- VBAエディタを閉じる
- Alt+F8
- 選んで実行
PERSONAL.XLSに記述すると毎回VBAを打たなくてすむけど、前の記事のSDI化していると多重起動扱いなので読み取り専用で開くけどいいのって聞かれる。
その場合にはPERSONAL.XLSのファイルを予め読み取り専用ファイルにすると解決できる。
C:ユーザーユーザー名AppDataRoamingMicrosoftExcelxlstart
P.S.いきなりexcelの記事を書いたのには訳があって、まいどまいど調べるのが面倒なので自分が分かる範囲でメモを残そう!!
さて何処に残す・・・いままではGmailとかだったんだけど、アクセス出来なかった時のことを考えてblogにすることにした。
そんな記事にはbizTipsのタグをつける!
Windows7/Excel2007