
mdbに[項目][当日日付][前回日付][前々回日付]というフィールドを持ったレコードが複数存在します。
Excelで書き込みボタンを押した際に、元々書かれていた[当日日付]の値を[前回日付]へ、[前回日付]の値を[前々回日付]へ、そして[当日日付]に関しては[今日の日付]を入れようと考えています。
日付をスライドさせていくイメージです。
[書き込む前]
項目-------当日日付--------前回日付--------前々回日付--------
外出 20160510 20160420 20160303
出張 20160510 20160422 20160401
....
[書き込んだ後]
項目-------当日日付--------前回日付--------前々回日付--------
外出 20160517 20160510 20160420
出張 20160517 20160510 20160422
....
Const CON1 = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
Const CON2 = "フォルダパス"
Dim Con As New ADODB.Connection
Dim Res As New ADODB.Recordset
Dim Col As ADODB.Field
Dim strKou,strSQL,strToday,r as String
Public Sub 書き込み処理()
strToday = Format(Now, "yyyymmdd")
strKou = Worksheets("シート名").Range("A1") '項目名 A2以降にも項目が書かれている為を、ループ処理を考えています
strSQL = "SELECT テーブル名.*" & vbNewLine
strSQL = strSQL & "FROM テーブル名" & vbNewLine
strSQL = strSQL & "WHERE (((テーブル名.項目名) = " & strKou & "));"
Con.Open CON1 & CON2
Res.Open strSQL, Con, adOpenKeyset, adLockPessimistic
Res!当日日付 = strToday
Res.Update
Set Res = Nothing
Con.Close: Set Con = Nothing
End Sub
このような形で、各種項目名に対して当日日付を入れる事は可能なのですが、前回の内容を隣のフィールドに入れるための処理が思いつきません。
書き込む処理前に一度全データを抽出しておき、各種項目の[当日日付][前回日付][前々回日付]を変数に保持しておく方法しかないでしょうか?
出来ればスマートに1回の接続でやりたいのですが無理でしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelからAccessのテーブルに書き込む時に時間がかかる 1 2022/10/14 20:38
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Visual Basic(VBA) エクセル VBA 条件付き書式 簡略化したい 2 2022/06/02 17:46
- Visual Basic(VBA) Sheet2の日付をキーにオートフィルターで2023年1月のデータを抽出し、Sheet3へ書き出すた 2 2023/03/06 23:57
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Excel(エクセル) エクセル2019でPDFファイル名に枝番号をつけたい。 アクティブワークシートを印刷した後の処理とし 4 2023/06/06 21:00
- Visual Basic(VBA) SQLで抽出 4 2022/12/04 13:55
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「24日の0時」って・・・
-
回覧板の日付について質問です...
-
差し込み印刷に当日の日付が入...
-
固定の日付を設定したい
-
iBookG41.2G 12インチの日付が1...
-
マクロボタンを押すと、ファイ...
-
Between関数とDateSerial関数の...
-
Excelでヘッダに前日の日付を表...
-
「時間」、「期日」、「日付」...
-
Access グループ毎で直近25件...
-
日付をオートフィルタするVB...
-
エクセル 日付の表示
-
パソコン
-
パソコンで購入したデーターが...
-
Visual Basicで使えないExcel関数
-
エクセルで6ヵ月後を自動入力で...
-
Excelについて
-
日付をキーにその日付から前と...
-
EXCEL 複数列にまたがる複数表...
-
Excelvbaでmdbへ書き込みを行う
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
マクロボタンを押すと、ファイ...
-
「24日の0時」って・・・
-
回覧板の日付について質問です...
-
日付の大小の表現
-
差し込み印刷に当日の日付が入...
-
「時間」、「期日」、「日付」...
-
エクセル マクロ 名前を付けて...
-
エクセルで日付別にシートを分...
-
EXCELで日付を****年上期、****...
-
履歴書の日付間違いで落ちますか。
-
Excelについて
-
フォームの値をクエリーに反映...
-
エクセルで6ヵ月後を自動入力で...
-
会社や役所などに提出する書類...
-
日付以外のデータを抽出したい...
-
ACCESSで日付ごとに自動連番(...
-
エクセルで日付け表示で、明治...
-
Excelで1週間毎の集計(今週と...
-
Excelでヘッダに前日の日付を表...
-
2つの日付の中間の日付 エク...
おすすめ情報