@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

複数のtxtファイルを1つのxlsファイルにまとめたい

1
投稿者投稿内容
gorisaku
ベテラン
会議室デビュー日: 2004/04/17
投稿数: 95
投稿日時: 2006-08-04 19:40
VS.NET(C# 2003)を使用してプログラム開発をしております。
件名の通りの機能を実現したいのですが、
この掲示板のソースなどを工夫しても実現できない状態です。

現状
・ファイルを読み込むたびに複数のxlsファイルとして作成される
・QueryTableか何かを使用するのではないかと感じている

実現したい機能
・xlsファイルは1つ(ブックは1つで複数のシート)に複数のtxtファイルを読み込みしたい(各シートには各txtファイル1つとして)

上記を実現するために簡単なコードを書いたのですが
いまいち分かりません。
@@@@@@@@@@ 以下コード @@@@@@@@@@
Excel.Application app = new Excel.Application();
Excel.Workbooks books = (Excel.Workbooks)app.Workbooks;

Excel._Workbook book = books.Open("d:\\a.txt",
 Missing.Value,Missing.Value,Missing.Value,
 Missing.Value,Missing.Value,Missing.Value,
 Missing.Value,Missing.Value,Missing.Value,
 Missing.Value,Missing.Value,Missing.Value);
book.SaveAs("d:\\a.xls",Excel.XlFileFormat.xlWorkbookNormal, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Excel.XlSaveAsAccessMode.xlNoChange, Missing.Value,Missing.Value,Missing.Value, Missing.Value);
app.Quit();
@@@@@@@@@@@@@@@@@@@@@@@@@

ファイルを読み込むためには単純に
”Excel._Workbook book = books.Open("d:\\a.txt", ・・・”
を複数回記述すれば良いとばかり思っておりましたが
よく考えると新しいbookが作成されると思い、
いろいろ探したのですがファイルを読み込むメソッドが見つかりませんでした。

そのようにすれば実現できるのでしょうか?
似たことをされた方ご教授お願いします。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-08-04 21:49
引用:

gorisakuさんの書き込み (2006-08-04 19:40) より:

よく考えると新しいbookが作成されると思い、いろいろ探したのですがファイルを読み込むメソッドが見つかりませんでした。
そのようにすれば実現できるのでしょうか?


原因はわかっていらっしゃるようですね。
Workbook 単位で作るのではなく、Worksheet 単位で作るということもおわかりになるはずです。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
gorisaku
ベテラン
会議室デビュー日: 2004/04/17
投稿数: 95
投稿日時: 2006-08-06 00:38
じゃんぬねっとさん お返事ありがとうございます。

引用:

原因はわかっていらっしゃるようですね。
Workbook 単位で作るのではなく、Worksheet 単位で作るということもおわかりになるはずです。



そこまでは考えがついたのですが、Worksheetにtxtファイルを読み込むメソッドが
見つかりませんでした。
Excelにて外部データの取り込みだと
"QueryTables.Add"が使われたのでそれを試してみたのですが、
ODBCを使用する状態出しかかけないような気がしています。
再度ご教授いただけないでしょうか?
1

スキルアップ/キャリアアップ(JOB@IT)