ブックを開く
Sub ブックを開く_パス指定()
Dim wb As Workbook
Set wb = Workbooks.Open(Filename:="D:\_Prog\Excel_VBA\■01_ブック\Sample.xlsx")
MsgBox wb.Name
MsgBox wb.Path
wb.Close
End Sub
ブックを閉じる
Sub mth_CloseBook()
Call ブックを開く_パス指定
Dim wb As Workbook
Set wb = Workbooks("Sample.xlsx")
Dim ws As Worksheet
Set ws = wb.Worksheets(1)
ws.Range("A1").Value = "dd"
Dim bSaveFlg As Boolean
Dim res As VbMsgBoxResult
res = MsgBox("上書き保存?", vbYesNo)
If res = vbYes Then
bSaveFlg = True
Else
bSaveFlg = False
End If
If bSaveFlg Then
wb.Close SaveChanges:=True
Else
wb.Close SaveChanges:=False
End If
End Sub
ブック OPEN確認
Function mth_ChkBookOpen(ByVal sFile_fp As String) As Boolean
On Error Resume Next
Open sFile_fp For Append As #1
Close #1
If Err.Number > 0 Then
mth_ChkBookOpen = True
Else
mth_ChkBookOpen = False
End If
End Function
ブック開く ダイアログ
Sub mth_OpenFileDialog()
Dim vFileName_fp As Variant
vFileName_fp = Application.GetOpenFilename("Excel Book,*.xsl?")
If VarType(vFileName_fp) = vbBoolean Then
MsgBox "Cancel"
Else
Workbooks.Open vFileName_fp
End If
End Sub
他のブックのプロシージャ呼び出し
Sub mth_他のブックのプロシージャ呼び出し()
Dim sFile_fp As String
sFile_fp = "D:\_Prog\Excel_VBA\■01_ブック\Sample_VBA.xlsm"
Debug.Print Application.Run("'D:\_Prog\Excel_VBA\■01_ブック\Sample_VBA.xlsm'!Test", 2)
Debug.Print Application.Run("'" & sFile_fp & "'" & "!Test", 2)
End Sub