C#を使用してExcelファイルからデータをプルしています。シートからテキストといくつかのマイナーなフォーマットデータを取得する必要があります。私のテストシートには115行10列あります。パフォーマンスが遅いようです。以下のコードを使用してテキストを引き出すだけの場合、実行には約2秒かかります。フォントをチェックすると(if(c.Font.Bold == null .....行)、最大8秒になります。境界情報を取得すると、最大17秒になります。
問題は、データを取得するために必要なシートが非常に多くなり、速度が問題になることです。これをスピードアップするために私ができることについて何か提案はありますか?助けてくれて本当に感謝しています。
foreach (Range c in oSheet.UsedRange.Cells)
{
var txt = c.Text;
if (c.Font.Bold == null || c.Font.Italic == null || Convert.ToInt32(c.Font.Underline) > 0 || Convert.ToBoolean(c.Font.Bold) || Convert.ToBoolean(c.Font.Italic))
txt = "";
var borderBottom = c.Borders.Item[Microsoft.Office.Interop.Excel.XlBordersIndex.xlEdgeBottom].LineStyle;
var borderTop = c.Borders.Item[Microsoft.Office.Interop.Excel.XlBordersIndex.xlEdgeTop].LineStyle;
var borderLeft = c.Borders.Item[Microsoft.Office.Interop.Excel.XlBordersIndex.xlEdgeLeft].LineStyle;
var borderRight = c.Borders.Item[Microsoft.Office.Interop.Excel.XlBordersIndex.xlEdgeRight].LineStyle;
}