'========================================================================================= ' 025 ファイルを開くダイアログボックスを表示してファイルを開く '----------------------------------------------------------------------------------------- '【ヒント】 ' このマクロは、おためし機能の動作用のコードを含んでいます。(概ね下半分) ' ★★★の行またはサブプロシージャーが、タイトル機能に関係するコードです。(概ね上半分) '========================================================================================= ' ◆標準モジュールのコード◆ '----------------------------------------------------------------------------------------- Option Explicit '【ご注意】★★★のない行はタイトル機能とは無関係です Dim バージョン As String Dim タイトル As String Dim スタイル As Long Dim メッセージ As String Dim 応答 As Variant '========================================================================================= Private Sub ファイルを開くダイアログボックスを表示する_Excel95、97、98用() Application.FindFile '★★★ End Sub '----------------------------------------------------------------------------------------- Private Sub ファイルを開くダイアログボックスを表示する_Excel2000用() If Application.FindFile Then '★★★ ファイルを正常に開けた場合の処理 Else キャンセルボタンがクリックされた場合の処理 End If End Sub '----------------------------------------------------------------------------------------- Private Sub ファイルを正常に開けた場合の処理() メッセージ = "選択されたファイルを開きました" 応答 = MsgBox(メッセージ, スタイル, タイトル) End Sub '----------------------------------------------------------------------------------------- Private Sub キャンセルボタンがクリックされた場合の処理() メッセージ = "「ファイルを開く」ダイアログボックスの、" & Chr(13) & Chr(13) & _ "[キャンセル]ボタンがクリックされました" 応答 = MsgBox(メッセージ, スタイル, タイトル) End Sub '========================================================================================= '----------------------------------------------------------------------------------------- Sub おためしマクロ() おためしメッセージを表示する バージョン = Left(Worksheets("Title").Range("L1").Value, 3) 'バージョンを取得する If バージョン = "9.0" Then 'Excel2000なら ファイルを開くダイアログボックスを表示する_Excel2000用 '★★★ ElseIf バージョン = "8.0" Then 'Excel97 or 98なら ファイルを開くダイアログボックスを表示する_Excel95、97、98用 '★★★ ElseIf バージョン = "7.0" Then 'Excel95なら ファイルを開くダイアログボックスを表示する_Excel95、97、98用 '★★★ Else スタイル = 48 'vbCritical メッセージ = "ごめんなさい!" & Chr(13) & Chr(13) & _ "このサンプルは、Excel 2000、98、97、95 用です" 応答 = MsgBox(メッセージ, スタイル, タイトル) Exit Sub End If End Sub '----------------------------------------------------------------------------------------- Private Sub おためしメッセージを表示する() Worksheets("Title").Select Range("P17").Select 'カーソルを定位置へ移動する タイトル = "500連発 第2弾 サンプルマクロ" スタイル = 64 'vbInformation メッセージ = "[OK]ボタンをクリックすると、" & Chr(13) & Chr(13) & _ "「ファイルを開く」ダイアログボックスが表示されるので、" & Chr(13) & Chr(13) & _ "ファイル名を選択してから[開く]ボタンをクリックするか、" & Chr(13) & Chr(13) & _ "または、[キャンセル]ボタンをクリックしてみてください。" If Worksheets("Title").Range("L1").Value = "7.0" Then 'Excel95なら メッセージ = メッセージ & Chr(13) & Chr(13) & _ " 【Excel95を使用中です、97以上のブックは選択不可】" End If 応答 = MsgBox(メッセージ, スタイル, タイトル) End Sub '----------------------------------------------------------------------------------------- Sub Auto_Close() Application.DisplayAlerts = False '閉じる際に確認メッセージを出さない ActiveWorkbook.Close '現在開いているブックを閉じる End Sub '-----------------------------------------------------------------------------------------