0

現在OleDB、Excelスプレッドシートに接続してデータを取得し、データにDataTableいくつかの変更を加えてから、データをWordにコピーするために使用しています。

そうすることで、テキストの一部が色付けされているか、背景色が灰色であるか、太字であるかなど、セルの書式設定が失われます。

私はInteropライブラリを使用してwordやOLEDBExcelと通信しています。

この解決策が私が達成する必要があるものに対して十分ではない場合、あなたは代替の解決策を提案できますか?(マクロ?)使ってみInterop.Excel.Stylesましたが、現在使っているセルとどう関連付けたらいいのかわかりません。

4

2 に答える 2

1

スプレッドシートの表の範囲をコピーし、フォーマットを保持する単語ドキュメントに直接貼り付けます。

wordDoc.Tables.Add(b.Range,newsheet.UsedRange.Rows.Count,newsheet.UsedRange.Columns.Count);
Microsoft.Office.Interop.Word.Table table = b.Range.Tables[1];
newsheet.UsedRange.Copy();
table.Range.Select(); 
wordApp.Selection.Paste();

wordDocはWord.Documentで、wordAppはword.Applicationです。お役に立てれば

于 2012-01-24T08:44:53.773 に答える
0

ええ、それは起こるだろう。OleDBは、情報の書式設定ではなく、データを移動します。フォーマットが必要な場合は、ExcelからWordにコピーして貼り付ける必要があります。プロセスを自動化する必要がある場合、VBAは外部からExcelとWordを制御する最も簡単な方法です。

于 2012-01-09T11:56:31.177 に答える