こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

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 年齢
以下同上
・・・・のように取り出したいと考えています。
よろしくお願いします。

投稿日時 - 2009-04-07 23:23:39

QNo.4861538

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

こんにちは
質問者さんの配列に格納したいという意図が見えてこないんですが..

FORループの中に下記の一文がありますね。
 range_data = CType(xl_W_Sheet.Cells(i,j),Excel.Range)
その中の「xl_W_Sheet.Cells(i,j)」を配列として扱ったらよいのでは?

Excelのセルは、配列そのものと考えるってことで(^^;

わざわざ配列を宣言して、それにセル上のデータをコピーする時間をかけてまでしたいというのは、とっても計算量が多いけど高速に計算したいとかの意図でしょうか?

投稿日時 - 2009-04-08 00:10:31

お礼

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

投稿日時 - 2009-04-19 17:27:17

あなたにオススメの質問