-5

C# でアプリケーションを作成しました。このアプリでは、複数の Excel ファイルを開いたり閉じたり、データを読み書きする必要があるため、アプリの実行が遅くなります。アプリを高速化するためにどのような方法を提案しますか?

データをExcelファイルに書き込むためのコードサンプル:

        Excel.Worksheet excelSheet = (Worksheet)(excelBook.Worksheets[1]);
        Range rng;

        rng = excelSheet.get_Range("C2");
        rng.Value2 = txtName.Text;
4

2 に答える 2

2

Excelファイルを読み書きするためにExcelファイルを開く必要はありません。OLEDBを使用してそれを行うことができます。はるかに高速です。「OLEDB Excel c#」で検索してください。

ここに例があります: http://www.codeproject.com/Articles/8500/Reading-and-Writing-Excel-using-OLEDB

于 2013-09-04T17:41:08.503 に答える
2

詳細な情報がないと、何をしているのかを判断するのは非常に困難です。Excel ファイルを開いたときに「何か」を行っていると仮定すると、コードの先頭で画面の更新をオフにしてみてください。

Application.ScreenUpdating = False

これは、シート間で大量のデータを移動する場合や同様の操作を行う場合、速度に大きな影響を与える可能性があります。

ユーザーが作業を行うために開いたままにしておく場合は、コードの最後で画面の更新を元に戻します。

Application.ScreenUpdating = True
于 2013-09-04T17:20:04.797 に答える