|
分類:[C#]
2008/05/23(Fri) 11:01:15 編集(投稿者) 2008/05/23(Fri) 10:59:52 編集(投稿者)
<pre><pre>はじめまして
C#(VS2005)から、ExcelのグラフデータをWordへコピーする方法で悩んでいます。
開発環境 Visual Studio 2005 Windows XP Pro Office 2007(COMにてMicrosoft Word/Excel 12.0 Object Libraryを参照)
グラフを作成する箇所までは完成しています。 前提 グラフは既に作成されているものとし、 Excel.Chart xlChartにExcel.ChartObject.Chartオブジェクトが入っている事とします。 Word.Range wRangeには、Word.Document.Rangeが入っている事とします。
実際にWord文書内にコピーする手順は以下の通りに行っています。
xlChart.ChartArea.Copy(); wRange.PasteAndFormat(Word.WdRecoveryType.wdPasteDefault);
上記のコーディングで一応貼り付けは出来ていますが、 Excelのグラフデータが、メタファイルに変換されてしまいます。 よって、後からグラフの編集もできず、印刷時に文字もつぶれてしまいます。
そこで、下記の手順を試しました。
手順@ xlChart.ChartArea.Copy(); wRange.PasteAndFormat(Word.WdRecoveryType.wdChartLinked); //このコマンドは使用できません。が発生
手順A xlChart.ChartArea.Copy(); object oMissing = Missing.Value; object oPlacement = Word.WdOLEPlacement.wdInLine; object oDataType = Word.WdPasteDataType.wdPasteOLEObject; wRange.PasteSpecial(ref oMissing, ref oMissing, ref oPlacement, ref oMissing, ref oDataType, ref oMissing, ref oMissing); //指定した種類のデータは使用できません。が発生
しかし、上記はいずれもエラーとなりました。 C#上からWordへExcelのグラフをグラフオブジェクトのままコピーする方法は無いのでしょうか? </pre></pre>
|