C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

■88223 / 親階層)  c# エクセルのセル範囲を1次配列に格納する方法
□投稿者/ ユウタ (1回)-(2018/08/09(Thu) 22:06:57)

分類:[C#] 

forを使わずにエクセルのセル範囲をstring型で1次配列に格納したいのですが、可能でしょうか。
(大量の値を格納するためforだと処理が遅くなるため高速化したいです)

以下コードの場合、Console.WriteLineでは「System.__ComObject」と出力されてしまいます。
AAA.xlsxには、1列目に5000行目まで文字列が入っています。

using System;
using System.Linq;
using usgExcel = Microsoft.Office.Interop.Excel;

namespace Test_エクセルを1次配列化
{
    class Program
    {
        static void Main(string[] args)
        {
            string FilePath = @"C:\AAA.xlsx";
            
            usgExcel.Application myExcel = new usgExcel.Application();
            myExcel.Visible = true;
            usgExcel.Workbook myWorkBook = null;

            myWorkBook = myExcel.Workbooks.Open(FilePath); 
            usgExcel.Worksheet myWorkSheet =  myWorkBook.Sheets["Sheet1"];            
            usgExcel.Range myRange = myWorkSheet.Range[myWorkSheet.Cells[1, 1], myWorkSheet.Cells[5000, 1]];
            object[] myRangeObj = (myRange).Cast<object>().ToArray();

            Console.WriteLine(Convert.ToString(myRangeObj[1]));
            Console.WriteLine(Convert.ToString(myRangeObj[2]));
            Console.WriteLine(Convert.ToString(myRangeObj[3]));
            Console.ReadKey();
        }
    }
}

編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
親記事 →Re[1]: c# エクセルのセル範囲を1次配列に格納する方法 /furu
→Re[1]: c# エクセルのセル範囲を1次配列に格納する方法 /魔界の仮面弁士
→Re[1]: c# エクセルのセル範囲を1次配列に格納する方法 /WebSurfer
 
上記関連ツリー

c# エクセルのセル範囲を1次配列に格納する方法 / ユウタ (18/08/09(Thu) 22:06) #88223 ←Now
Re[1]: c# エクセルのセル範囲を1次配列に格納する方法 / furu (18/08/10(Fri) 09:57) #88228
Re[1]: c# エクセルのセル範囲を1次配列に格納する方法 / 魔界の仮面弁士 (18/08/10(Fri) 11:18) #88231
Re[1]: c# エクセルのセル範囲を1次配列に格納する方法 / WebSurfer (18/08/10(Fri) 13:59) #88232
  └ Re[2]: c# エクセルのセル範囲を1次配列に格納する方法 / ユウタ (18/08/11(Sat) 00:25) #88236
    └ Re[3]: c# エクセルのセル範囲を1次配列に格納する方法 / 魔界の仮面弁士 (18/08/11(Sat) 02:36) #88237
      └ Re[4]: c# エクセルのセル範囲を1次配列に格納する方法 / ユウタ (18/08/11(Sat) 17:53) #88238 解決済み

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信