タイトル : エクセル間でで値だけのコピー 投稿日 : 2007/12/22(Sat) 18:37 投稿者 : K
いつもお世話になります。Kと申します。 環境:WinXP+SP2 VB.net2003 Excel2003+SP3 Access2003+SP3 データベースからVB上のDataGridにデータを取り込み、 それをエクセルで作成された雛型ファイルにデータを書き込むのですが エクセルの雛型ファイルに直接Range.Valueで書き込むと時間がかかります。 (3000件強のレコード数で1時間以上かかる) そこで、一旦CSVファイルに書き出し、CSVファイルとエクセルの雛型ファイルを開き 範囲指定でコピーしようとしました。 色々調べて、xlPasteValuesが値のみのコピーだと思い、下記のようにやってみましたが 書式設定までコピーしてしまっています。 値だけをコピーして、書式設定は雛型ファイルで設定しているのを使いたいのです。 csSheetがCSVファイル、xlSheetがエクセルの雛型ファイル 'CSVファイルのデータを雛型エクセルファイルへコピー csSheet.Range(csSheet.Cells(1, 1), csSheet.Cells(65000, 34)).Copy() xlSheet.Range(xlSheet.Cells(11, 1), xlSheet.Cells(11, 34)).PasteSpecial(Excel.XlPasteType.xlPasteValues) 2つのエクセルファイル間で、値のみのコピーはできないものなんでしょうか? どなたか、サンプルや手法をご存知の方がおられましたら、ご教授いただけないでしょうか? よろしくお願いいたします。 |