0

このタスクを実行するために Interop.Excel を使用しています。あるワークブックのシートからセルの範囲をコピーして別のワークブックのシートに貼り付けようとしていますが、元のシートの書式を保持して目的のシートに貼り付けたいと考えています。PasteSpecial を見つけて使用しようとしましたが、試してみると、役に立たない例外メッセージが表示されます。グーグル経由で何も見つからなかったので、ここで助けていただければ幸いです...

以下のコードを使用してこれを試します。また、PastSpecial メソッドの初期パラメーターとして Excel.XlPasteType.xlPasteAll を使用してみましたが、実際にはデータが目的のシートに貼り付けられました。余分なグリッド線のように見えましたが、貼り付けたデータをクリックすると、オブジェクト全体が移動できるようになりました。貼り付けられた画像を移動できるのと同じです。もちろん、これは私が望んでいたものではありません。アイデアは、書式設定と境界線のスタイルと使用されている色を保持する必要があるということです。

読んでくれてありがとう - 投稿の書式設定が台無しになっていたらごめんなさい。

Excel.Range rng6 = sht6.Cells.get_Range("A1", "O55"); 
Excel.Range rng1 = sht.get_Range("A" + rowStart6.ToString(), "O" + rowEnd6.ToString());
rng6.Copy(mis);
/** Fails here at PasteSpecial**/
rng1.PasteSpecial(Excel.XlPasteType.xlPasteFormats, Excel.XlPasteSpecialOperation.xlPasteSpecialOperationNone, false, false);
4

0 に答える 0