Mam's WebSite
建築CGパース住宅CGパース

Mamの覚書Q&A検索

トップページMamの覚書Q&A検索Excel(VBA)⇒Q&A


大項目:「 Excel 」 - 中項目:「 VBA 」

「 マクロ(.xlsm)から、新規ファイル(.xls)を作成し、シートをコピーするとエラー 」

マクロ(.xlsm)から、新規ファイル(.xls)を作成し、シートをコピーするとエラーになります。


回答

.xlsxや.xlsmはシート内で最大1048576行ですが、
.xlsは最大65536行しかないため、コピーできないです。
 
以下のようにエクセル自体の新規ファイルの作成を.xlsxで作成してからシートをコピーして、
必要であれば元に戻しましょう。
 
    Dim xlsxflg As Boolean
    xlsxflg = True
    If Application.DefaultSaveFormat = xlExcel8 Then '56
      Application.DefaultSaveFormat = xlOpenXMLWorkbook
      xlsxflg = False
    End If
 
'ブックを作成して、シートコピー後元に戻す
 
    If Not xlsxflg Then
      Application.DefaultSaveFormat = xlExcel8  '56
    End If

ソース


Mam's WebSite