タイトル | : エクセルのコピーについて |
記事No | : 5925 |
投稿日 | : 2007/07/26(Thu) 16:16 |
投稿者 | : 通販の鬼 |
いつもお世話になります。鬼です。
(環境) OS:WinXP,OfficeXP,VB.net2005 Compac,CUP:2.4G,256MB
今回、VB.netよりエクセルシートのコピーを行う処理を行おうと思っております。 既存エクセルファイルを展開し、新規Bookにシートコピー処理を行うと エクセルの幅や高さが異常な値になります(基本的には縮小されてしまう。) これはコピー処理をただ行っただけで発生します。 下記にサンプルを添付いたします。 レクチャーいただければと思います。
'エクセルアプリケーション Protected m_xlsApp As Excel.Application Protected m_xlsWorkBooks As Excel.Workbooks
'雛形エクセル Protected m_xlsBook As Excel.Workbook Protected m_xlsSheets As Excel.Sheets Protected m_xlsWorkSheet As Excel.Worksheet
'新規に作成するエクセル Protected m_xlsNewBook As Excel.Workbook Protected m_xlsNewSheets As Excel.Sheets Protected m_xlsNewWorkSheet As Excel.Worksheet m_xlsApp = New Excel.Application m_xlsWorkBooks = m_xlsApp.Workbooks
m_xlsBook = m_xlsWorkBooks.Open(p_strExcelFilePath) m_xlsSheets = m_xlsBook.Worksheets
m_xlsNewBook = m_xlsWorkBooks.Add() m_xlsNewSheets = m_xlsNewBook.Worksheets MyBase.MRComObject(1) MyBase.m_xlsWorkSheet = MyBase.m_xlsSheets.Item(p_objItem) MyBase.MRComObject(1) MyBase.m_xlsNewWorkSheet = MyBase.m_xlsNewSheets.Item(p_objItem) Dim l_xlsWkWorkSheet As Excel.Worksheet
l_xlsWkWorkSheet = MyBase.m_xlsWorkSheet l_xlsWkWorkSheet.Copy(m_xlsNewWorkSheet) MyBase.MRComObject(l_xlsWkWorkSheet) 'メモリ解放
|