|
▼VBA初心者 丸助 さん:
これで如何でしょう?
変わらないようであれば(ReadOnly:=True)が原因かも??
Private Sub Workbook_Open()
Dim Da As Variant
Application.ScreenUpdating = False
For Each Da In Array("Meibo.xls", "PrintForm.xls")
SheetAddandCopy Da
Next Da
Application.ScreenUpdating = True
End Sub
Private Sub SheetAddandCopy(sFileName As Variant)
Dim Wb1 As Workbook
Set Wb1 = Workbooks.Open(ThisWorkbook.Path & "\" & sFileName, ReadOnly:=True)
Wb1.Worksheets(1).Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
Workbooks(sFileName).Close False
Set Wb1 = Nothing
End Sub
>そうですか。面倒なので強制的に保存しましょうかね。。。
>また別の問題なんですが、
>BookのBeforeCloseイベントで、名簿シートを本体ブックにコピーして
>削除するコードを入れると、×ボタンを押して、閉じるときの
>「変更を保存しますか?」をキャンセルすると、名簿シートが削除され
>てしまい、そのままプログラムを動作できる状態ではなくなってしまうの
>ですが、よい方法はありますでしょうか。
よく意味がわかりません??
単純に上書き保存して閉じるのではだめなのでしょうか?
|
|