こんにちは!今回は、ExcelのVBAマクロでセルの書式設定「縮小して全体を表示」しているセルを探すマクロサンプルを紹介します。
心配な人
そんなマクロ需要ある?
と思いつつ、とある場面で必要になったので紹介しようと思います。
セルの範囲を指定して、セルひとつずつ順番に設定が入っているか確認し、「縮小して全体を表示」設定となっていればセルを水色の背景色を付けるというマクロになっています。それでは、いってみましょう!
サンプルマクロ:「縮小して全体を表示」セルを探す
早速サンプルマクロです。
Sub findShrinkToFit()
' 変数定義
Dim rowNum As Integer
Dim colNum As Integer
' ★行列番号設定
rowNum = 10 ' 行番号
colNum = 10 ' 列番号
' 「縮小して全体を表示」設定されているセルを探す
For i = 1 To 10
For j = 1 To 10
If Cells(i, j).ShrinkTofit = True Then
Cells(i, j).Interior.ColorIndex = 34
End If
Next j
Next i
End Sub
マクロ簡単解説
サンプルマクロ内の「' ★行列番号設定」部分のrowNumとColNumの値を変更すると探索範囲が変わります。サンプルでは行10で10行目まで、列10でJ列(A列が1,B列が2,C列が3)までの範囲を調べています。
調べ方としては「ShrinkTofit」という設定がTrueであれば「縮小して全体を表示」と設定となっているので、もし設定がTrueだったら~というIF文で判定しています。
セルの背景をColorIndexの34=水色に設定しています。ColorIndex番号を変更してもらえれば、セルの色は変わります。また、「Cells(i, j).Interior.ColorIndex = 34」の処理部分を書き換えてもらえれば、「縮小して全体を表示」しているセルがあった時にどうするか?の処理が変わります。
さいごに
いかがだったでしょうか。「縮小して全体を表示」設定はどのセルに設定したっけな?と探すのが面倒になったのでマクロを組んでみた今回でした。それでは、また!