2017-03-13 11 views
0

これは難しいことではありませんが、私が見つけたすべての解決策は機能していません。基本的には、C#コンソールアプリケーションを使用して行3からExcelシートを作成しています。人口の一部は動作しますが、私は何をする必要があることは、行3で始まり、ここではこれまでのところ私のコードで自分のデータですべての行を削除するには、次のとおりです。C#Excel InterOp:行2より下の行をすべて削除する

Excel.Range xlRange = xlWorkSheet.UsedRange;     
for (int j = 3; j <= xlRange.Rows.Count; j++) 
{ 
    /// xlRange.Rows[j].EntireRow.Delete(Excel.XlDeleteShiftDirection.xlShiftUp); 
     xlRange.Rows[j].Delete(Excel.XlDeleteShiftDirection.xlShiftUp); 
} 

注意、コメントアウトコードや機能コードの両方が何かを生成します削除機能のようには到達できません。

ありがとうございます!

更新1他のExcelファイルのループでは次のように動作します。他のExcelファイルには何らかのロックがあります。

((Excel.Range)xlWorkSheet.Rows[j]).Delete(Excel.XlDeleteShiftDirection.xlShiftUp); 

アップデート2

だから、そう、不思議なオリジナルのXLSファイルはパスワードで保護されて、私はまだパスワードを持っていません。このファイルを使用すると、新しい値を書き込んだり、既存の値を上書きしても行を削除することはできません。

答えて

0

以下は私の問題ではありませんが、質問に対する私の「更新」に示されているように、そのファイルのパスワード保護のために必要なファイルにはうまくいきません。などがあり、マクロが必要なファイルであるので、私は単にGoogleドキュメントにアップロードなどの回避策を使用することはできません

HTH

((Excel.Range)xlWorkSheet.Rows[j]).Delete(Excel.XlDeleteShiftDirection.xlShiftUp); 
関連する問題