###前提・実現したいこと
Windows7 Access2010 Excel2010を利用しシステム構築しています。
エクセルの帳票テンプレートの1シートをそのまま別のエクセルにコピーしたいと考えています。(列幅・行幅も含め)
###発生している問題・エラーメッセージ
列幅を設定するため、xlPasteColumnWidthsを指定したのですが、エラーにならず列幅が反映されません。原因や原因の特定方法をご教授いただけないでしょうか?
###該当のソースコード
Access2010
1 2 '帳票テンプレートファイル 3 Dim formTmpFile As String 4 formTmpFile = "テンプレート.xls" 5 Dim tmpWkSheetList As String 6 tmpWkSheetList = "対象シート" 7 8 'テンプレートファイル 9 Dim tmpBook As Object 10 Dim openBook As Object 11 Dim copyFromFile As Object 12 13 '出力帳票 14 Dim xlApp As Object 15 Dim xlBook As Object 16 Dim xlSheet As Object 17 Dim formFile As String 18 formFile = "出力帳票.xls" 19 20 'テンプレートファイルを開く 21 Set tmpBook = CreateObject("Excel.Application") 22 Set openBook = tmpBook.Workbooks.Open(formTmpFile) 23 Set copyFromFile = openBook.Worksheets(tmpWkSheetList) 24 25 '帳票ファイルを開く 26 Set xlApp = CreateObject("Excel.Application") 27 Set xlBook = xlApp.Workbooks.Add 28 Set xlSheet = xlBook.Worksheets("Sheet1") 29 30 'テンプレートファイルよりフォーマットをコピー 31 copyFromFile.Range("1:28").Copy 32 xlSheet.Range("1:28").PasteSpecial Paste:=xlPasteColumnWidths 33 34 'アラート無視 35 xlApp.DisplayAlerts = False 36 37 '帳票保存 38 xlBook.SaveAs (formFile) 39 40 xlApp.DisplayAlerts = True 41 42 'Excel終了 43 tmpBook.Application.CutCopyMode = False 44 openBook.Close 45 Set copyFromFile = Nothing 46 tmpBook.Quit 47 Set openBook = Nothing 48 Set tmpBook = Nothing 49 50 xlBook.Close 51 xlApp.Quit 52 53 Set xlSheet = Nothing 54 Set xlBook = Nothing 55 Set xlApp = Nothing 56 57 FormOutput = True 58 59 Exit Function
###試したこと
課題に対してアプローチしたことを記載してください
###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/11/19 02:49
2017/11/21 11:24