• 締切済み

Excel.Rangeで取得した値を配列に格納するには?

プログラミング初心者です。 VB.NET でExcelからデータを取得したのですが、配列等に格納したいのですが、うまくできなくて困っています。どなたか教えてください。 例)以下のデータを取得する場合 セルA(列)1(行)からA5まで セルB1からB5まで セルC1からC5まで Dim xl_APP As Excel.Application Dim xl_Book AS Excel.Workbook Dim xl_Sheet As Excel.Seets = xl_Book.Worksheets Dim xl_W_Sheet As Excel.Worksheet = CType(xl_W_Sheet.Item(1),Excel.Worksheet) 中略 Dim range_data As Excel.Range Dim i Integer Dim j Integer Dim strCel As String For i = 1 To 5 For j = 1 To 3 range_data = CType(xl_W_Sheet.Cells(i,j),Excel.Range) strCel = CStr(range_data.Value)  ↑String型変数に格納していますが、多次元配列?に格納して取り出せるようにしたいのですが、どうしたらよいのでしょうか? Next Nest <range_dataに格納されるデータ> A1:氏名 B1:学年 C:1 年齢 以下同上 ・・・・のように取り出したいと考えています。 よろしくお願いします。

みんなの回答

  • A88No8
  • ベストアンサー率52% (836/1606)
回答No.1

こんにちは 質問者さんの配列に格納したいという意図が見えてこないんですが.. FORループの中に下記の一文がありますね。  range_data = CType(xl_W_Sheet.Cells(i,j),Excel.Range) その中の「xl_W_Sheet.Cells(i,j)」を配列として扱ったらよいのでは? Excelのセルは、配列そのものと考えるってことで(^^; わざわざ配列を宣言して、それにセル上のデータをコピーする時間をかけてまでしたいというのは、とっても計算量が多いけど高速に計算したいとかの意図でしょうか?

suica7
質問者

お礼

A88No8さん、アドバイスありがとうございます。 もう一度、考えてみます。