0

OLEDB を使用して、ワークシートの最後に新しい行を挿入しようとしていました。ワークシートには、範囲 (a1:xx) に書式テーブルがあり、書式と数式が格納されています。ただし、OLEDB インサートにはフォーマットが付属していません。

私は投稿を読みましたフォーマットを取得することについて話しているc#を使用してExcelで1つの行のフォーマットを別の行にコピーする方法ですが、私にとってはうまくいきません。また、私はそれが式を得るとは思わない。

Excel UI では、フォーマットされたテーブルの右下隅に二重矢印が表示され、それをドラッグしてフォーマット テーブルの範囲を拡張できます。

画像: Excel での表示

C# でできることはありますか?

ありがとう。

        Excel.Range last = xlWS.Cells.SpecialCells(Excel.XlCellType.xlCellTypeLastCell, Type.Missing);
        Excel.Range RngToCopyOri = xlWS.get_Range("A1", last).EntireRow;
        Excel.Range RngToCopy = RngToCopyOri.Resize[RngToCopyOri.Rows.Count + 1, RngToCopyOri.Columns.Count]; //because insert will add only 1 row, so the range would be one row larger
        Excel.Range RngToInsert = xlWS.get_Range("A1", Type.Missing).EntireRow;
        RngToInsert.Insert(Excel.XlInsertShiftDirection.xlShiftDown, RngToCopy.Copy(Type.Missing));

Range(A1,lowerleft cell) を元の場所にコピーしようとしましたが、何も変わりませんでした。

4

1 に答える 1