
No.1ベストアンサー
- 回答日時:
dim array20071020 as string
dim array20071021 as string
dim array20071022 as string
...
みたいな事をプログラムでと言う事だと思うのですが、多分できないと思います。
で、excelにはcollectionと言う、名前も変数も文字にできるオブジェクトがあるので、
dim csv as new collection
csv.Add loadCsv("20071020"),"20071020"
csv.Add loadCsv("20071021"),"20071021"
csv.Add loadCsv("20071022"),"20071022"
(loadCsvはたとえばの関数です)
と追加しておけば、
str=csv("20071020")
で読み出せます。
collectionのアイテムは、文字とか変数だけではなく、配列やオブジェクトとかを、個々に指定できる点が便利です。
Dim hoge(1, 2) As Integer
hoge(1, 1) = 11
hoge(1, 2) = 12
Dim fumu As New Collection
fumu.Add 123, "20071020"
fumu.Add "abc", "20071021"
fumu.Add hoge, "20071022"
fumu.Add Range("A1:C5"), "20071023"
MsgBox fumu("20071020")
MsgBox fumu("20071021")
MsgBox fumu("20071022")(1, 1)
MsgBox fumu("20071022")(1, 2)
MsgBox fumu("20071023").Rows.Count
MsgBox fumu("20071023").Columns.Count
ご返信遅れましてすみません。
Collectionをの使い方を勉強して、無事希望通りのことができました。
配列ではなくDataTableを使いましたが、
教えて頂いたようにそれぞれのCSV内のデータをDataTableに入れる関数をつくり、キーを変数で指定できたのでループ処理でコレクションに追加できました。
どうもありがとうございました<(_ _)>
No.2
- 回答日時:
Set StrCSV = CreateObject("Scripting.Dictionary")
StrCSV("array20071020") = "A"
StrCSV("array20071021") = "B"
StrCSV("array20071022") = "C"
StrCSV("array20071023") = "D"
もし、VB6なら上記のような連想配列というのがあります。
ご返信遅れてすみません。
今回はNo.1さんに教えていただいた方法で試行錯誤し、ようやく希望通りのことができました。
連想配列を使う方法、なんとか頭では理解できましたので、こちらでやる方法も勉強してみたいと思います。
どうもありがとうございました<(_ _)>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
VBA 変数名に変数を使用したい。
Visual Basic(VBA)
-
VBAでループ内で使う変数名を可変にできないか。
Visual Basic(VBA)
-
VBAで変数の数/変数名を動的に変化させる
その他(プログラミング・Web制作)
-
-
4
Excel-vba 文字列と変数を連結して更に変数として扱いたい
その他(プログラミング・Web制作)
-
5
VBA コレクションに2次元配列を追加して取り出す方法
Visual Basic(VBA)
-
6
「Columns(A:C")」の列文字を数字にして表記したい"
Excel(エクセル)
-
7
配列の参照渡しで型が一致しません。
Visual Basic(VBA)
-
8
【Excel VBA】 WorksheetやRangeオブジェクトとして宣言した変数の開放は必要でしょうか?
その他(Microsoft Office)
-
9
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
10
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
11
変数名の取得
Visual Basic(VBA)
-
12
配列の値を置換するにはどうすればいいでしょう?
Excel(エクセル)
-
13
変数を動的に作るには?
Visual Basic(VBA)
-
14
UserForm1.Showでエラーになります。
工学
-
15
エクセルVBA 配列からセルに「関数式」を一気代入したい
Visual Basic(VBA)
-
16
VBA 1次元配列を2次元に追加する
Visual Basic(VBA)
-
17
VBA:日付を配列に入れ別セルに転記するとデータ型が変わる
Visual Basic(VBA)
-
18
動的配列が存在(要素が有る)か否かを判定できますか?
Visual Basic(VBA)
-
19
ExcelのVBA。public変数の値が消える
Visual Basic(VBA)
-
20
配列でデータが入っている要素を求める方法
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
vba textboxへの入力について教...
-
【ExcelVBA】5万行以上のデー...
-
VBAでCOPYを繰り返すと、処理が...
-
複数のExcelファイルをマージす...
-
【ExcelVBA】値を変更しながら...
-
vbsでのwebフォームへの入力制限?
-
VBA ユーザーフォーム ボタンク...
-
【マクロ】シートの変数へ入れ...
-
Vba セルの4辺について罫線が有...
-
Vba Array関数について教えてく...
-
WindowsのOutlook を VBA から...
-
【マクロ】並び替えの範囲が、...
-
Excelのマクロについて教えてく...
-
VBAで特定の文字が入った行をコ...
-
【ExcelVBA】値を変更しながら...
-
VBAでセルの書式を変えずに文字...
-
VBA 円グラフ 特定条件に一致し...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
【マクロ】開いているブックの...
-
エクセルのマクロについて教え...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
$_SESSIONに二次元配列を使える...
-
String だと「 ByRef引数の型が...
-
配列をループでたくさん宣言し...
-
file_existsでファイル名の部分...
-
配列一致(要素順番は違うが内容...
-
foreachで多次元配列にしたくな...
-
配列を回すとき、最後の要素だ...
-
正規表現についての質問
-
増える数字を配列に全て格納し...
-
MySQL接続・カテゴリわけ
-
CakePHPのfindの取得件数は?
-
すべての変数の値をリセットする
-
PHPで配列をPOSTデータで送った...
-
ネストが深い時のforeachはどう...
-
PHPにてクラスを配列にすること...
-
配列の値の更新方法について
-
foreachのなかで次のキーを参照...
-
【PHP】配列内のある値以上をカ...
-
配列に入っている数を調べる方...
-
array_push関数について
おすすめ情報