2017-04-11 2 views
1

MS-Accessに4(型番)の値の配列を格納する必要があるテーブルがあります。現時点では、名前付きフィールドVAL1、VAL2、VAL3、VAL4にあります。しかし、データベーステーブルからバイナリデータファイルを生成する関連するVBAコードでループを使用したいので、煩雑です(値の数が大きくなる可能性があります)。アクセステーブル内の配列の処理方法

生インデックス値を使用してVBAでテーブルフィールドにアクセスすることはできますか?例として、私は次のフィールドを持つテーブルがある場合:

名前 VAL1 VAL2 VAL3 VAL4

私の4つのVALフィールドにアクセスできるように、私は、一般的な名前やインデックスを使用してフィールドを参照することができますTableName.field(i)などの構造体を使用するループで

+1

いいえ、実際はありません。このような場合には、 'name_id | value_id | value ' - 各値に関連する名前ごとに4行。 –

+0

レコードセットのフィールドをループすることができます。ここに:http://stackoverflow.com/q/11548697/3820271( 'rs.Fields(n).Value'を使って値を取得してください)。しかし、アレックスが書いたように、あなたはおそらくあなたのテーブルデザインを変えるべきです。また、Crosstab query/Pivotを使用して表形式のビューを取得します。 – Andre

+0

インデックスは0から始まることに注意してください。また、同様の名前のフィールドの場合は、フィールド名と参照を動的に作成できます: 'rs.Fields(" Val "&n)'。ただし、おそらく類似の名前のフィールドだけでなく、すべてのフィールドを参照する必要があるため、インデックス参照を使用してください。 – June7

答えて

-1

あなたのフィールドに実際に表現されているものに関連する名前を付けておくと、今はもっと良くなると思います。それは私の.02です。

関連する問題