前提・実現したいこと
AccessからVBAで雛形となるExcelファイルを使って新規Excelファイルを出力させたいです。
発生している問題・エラーメッセージ
出力されたファイルを開くと必ず非表示の状態で開かれます。
そのため、Excel画面の「表示タブ」→「再表示」からブックを表示させないと内容を見ることができません。
再表示させた状態で上書き保存をし、ファイルを閉じてもう一度開くと普通に表示されます。
該当のソースコード
標準モジュールに記載して実行
VBA
1Option Compare Database 2 3Public Function test01() 4 Dim strReadPath As String, XL As Object, WB As Object, WS As Object 5 Set XL = CreateObject("Excel.Application") 6 XL.Visible = False 7 XL.DisplayAlerts = False 8 Set WB = GetObject(CurrentProject.Path & "\test.xlsx") '雛形を取得 9 Set WS = WB.Sheets(1) 10 WS.Name = "Sheet1" 11 WS.Cells(1, 1) = "サンプルテキスト" 12 WB.SaveAs FileName:=CurrentProject.Path & "\output.xlsx" '保存 13 'XL.Windows("output.xlsx").Visible = True 14 'WB.Save 15 If Not WB Is Nothing Then WB.Close: Set WB = Nothing 16 If Not XL Is Nothing Then XL.Quit: Set XL = Nothing 17End Function
試したこと
全く新しいAccessファイルと、全く新しい雛形ファイルを用意して同じプログラムを実行しましたが同じ症状になりました。
上記ソースコードの下から4行目と5行目、コメント化されている箇所のコメントを解除して実行すると、きちんと表示されるのですが、他のExcelブックを開いた状態で実行するとそこでエラーになります。
補足情報(FW/ツールのバージョンなど)
Windows 10 Home 64bit
Microsoft Access 2013
Microsoft Excel 2013
Accessの参照設定:
Visual basic For Applications
Microsoft Access 15.0 Object Library
OLE Automation
Microsoft Office 15.0 Access database engine Object Library
Microsoft Excel 15.0 Object Library

回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/25 00:47