###AccessのVBAにてテーブルの特定のフィールド&レコードのデータを複製する
AccessのVBAにてcsvのデータをテーブルに取り込み後、特定のフィールドにて格納されているデータを同一フィールドのデータが格納されていないレコードにデータの複製はできますでしょうか?
#####csvの中身
日付 | 社員番号 | 金額 |
---|---|---|
2019/04/01 | ||
2225 | 5,000 | |
2240 | 10,000 | |
2273 | 2,000 |
csvに出力するデータの都合でこのようになっています。
#####データ複製後のテーブル
日付 | 社員番号 | 金額 |
---|---|---|
2019/04/01 | 2225 | 5,000 |
2019/04/01 | 2240 | 10,000 |
2019/04/01 | 2273 | 2,000 |
日付のデータを社員番号が格納されているフィールドに複製し、代わりに、日付データのみのフィールドを削除するという流れです。
'テキストファイルを取り込む DoCmd.TransferText acImportDelim, "IN 金額合計", "T01_金額合計" _ , "C:\Users\Documents\01-1 売上管理\01 金額合計.txt" '金券カードテーブルを開く Set db = CurrentDb() Set rs = CurrentDb.OpenRecordset("T01_金額合計", dbOpenTable) ReDim vArray(rs.RecordCount - 1, 2) i = 0 '最後のレコードまで繰り返す Do Until rs.EOF '有効な社員番号かつ取引がある場合 If (rs(1) >= 2200 And rs(1) <= 2473) And rs(2) > 0 Then rs.Edit '取引番号の初期値として『99999』を出力する rs(3) = "99999" '変更をアップデートする rs.Update Else If IsDate(rs(0)) And i = 0 Then i = 1 Else 'レコードを削除する rs.Delete End If End If '次のレコードに移動する rs.MoveNext Loop
回答2件
あなたの回答
tips
プレビュー