'========================================================================================= ' 318 ワークシートが再計算されるときに列幅を調整する '----------------------------------------------------------------------------------------- '【ヒント】 ' このマクロは、おためし機能の動作用のコードです。 ' タイトル機能に関係するマクロは、Sheet2(名簿シート)のコード画面にあります。 '========================================================================================= ' ◆標準モジュールのコード◆ '----------------------------------------------------------------------------------------- Option Explicit Dim タイトル As String Dim スタイル As Long Dim メッセージ As String Public 応答 As Variant '----------------------------------------------------------------------------------------- Sub おためしマクロ() Worksheets("計算").Select Columns("A:D").EntireColumn.AutoFit '列幅を自動調整する Range("A1").Select 'カーソルを定位置へ移動する タイトル = "500連発 第2弾 サンプルマクロ" スタイル = 32 + 4 'vbQuestion + vbYesNo メッセージ = "「計算シート」が再計算されるときに列幅を調整しますか" & Chr(13) & Chr(13) & _ "(どちらかのボタンをクリックしてから、面積または単価を大幅に変えてみてください)" 応答 = MsgBox(メッセージ, スタイル, タイトル) End Sub '----------------------------------------------------------------------------------------- Sub Auto_Close() Application.DisplayAlerts = False '閉じる際に確認メッセージを出さない ActiveWorkbook.Close '現在開いているブックを閉じる End Sub '----------------------------------------------------------------------------------------- '========================================================================================= ' ◆Sheet2のコード◆ '----------------------------------------------------------------------------------------- Private Sub Worksheet_Calculate() '★★★ Sheet2(計算シート)が再計算されると実行される If 応答 = vbYes Then 'メッセージボックスでの応答が「はい」なら Columns("A:D").EntireColumn.AutoFit '列幅を自動調整する End If End Sub '=========================================================================================