1
MS-Accessに4(型番)の値の配列を格納する必要があるテーブルがあります。現時点では、名前付きフィールドVAL1、VAL2、VAL3、VAL4にあります。しかし、データベーステーブルからバイナリデータファイルを生成する関連するVBAコードでループを使用したいので、煩雑です(値の数が大きくなる可能性があります)。アクセステーブル内の配列の処理方法
生インデックス値を使用してVBAでテーブルフィールドにアクセスすることはできますか?例として、私は次のフィールドを持つテーブルがある場合:
名前 VAL1 VAL2 VAL3 VAL4
私の4つのVALフィールドにアクセスできるように、私は、一般的な名前やインデックスを使用してフィールドを参照することができますTableName.field(i)などの構造体を使用するループで
いいえ、実際はありません。このような場合には、 'name_id | value_id | value ' - 各値に関連する名前ごとに4行。 –
レコードセットのフィールドをループすることができます。ここに:http://stackoverflow.com/q/11548697/3820271( 'rs.Fields(n).Value'を使って値を取得してください)。しかし、アレックスが書いたように、あなたはおそらくあなたのテーブルデザインを変えるべきです。また、Crosstab query/Pivotを使用して表形式のビューを取得します。 – Andre
インデックスは0から始まることに注意してください。また、同様の名前のフィールドの場合は、フィールド名と参照を動的に作成できます: 'rs.Fields(" Val "&n)'。ただし、おそらく類似の名前のフィールドだけでなく、すべてのフィールドを参照する必要があるため、インデックス参照を使用してください。 – June7