No.2ベストアンサー
- 回答日時:
>指定された数でわり、割った数の分および余った数だけレコードに追加したい
>Cに入っている・・
理解しにくいのですが・・Cにある値が追加したいレコード数なのでしょうか?それとも#1の方が回答しているように除算し剰余の値を求めてその値により同じレコードを追加する数とするのでしょうか?定かではありませんが。
質問を見るとCに剰余の値がありその数で同一レコードを追加ととれるので。
VBでやるには
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim cnt As Integer
rs.Open "テーブル名", cn, adOpenKeyset, adLockOptimistic
Do Until rs.EOF
レコード数 = rs.C
Do Untile If cnt <> レコード数 Then
'レコードを追加する記述を書く
End If
Loop
rs.MoveNext
Loop
・
ざっとですが大まかに書きましたがこんな感じで良いとおもいます。
それ以外に・・もっと簡単な方法。
テーブルのCがレコード数とした場合もっと簡単にできます。(テーブルを一つ別に作りますが)
Cに入る値より大きい数字があるテーブルを作ります。
例えばCountテーブルとします。フィールドはcntとします。
cntに数字を順に入力します。(Cに入る数字より多く)
cnt
1
2
3
・
・
10 のように入力しておきます。
A|B|C
1|2|3
2|3|2 のテーブルのクエリを作ります。
そのクエリにテーブル追加でCountテーブルを追加します。
CountテーブルのCntをクエリにフィールドに追加して抽出条件に<=[C]と記述してください。
このクエリを開けばCの数値によってその数だけ同一のレコードを表示できます。クエリを開けばすぐ確認できます。
このクエリを追加クエリにして2番目のテーブルに追加すれば
A|B|C
1|2|3
1|2|3
1|2|3
2|3|2
2|3|2
のように追加できます。
No.1
- 回答日時:
>それらを最終的に指定された数でわり、割った数の分および余った数だけ
例えば、集計が7で指定された数が3であったら、4件の同じレコードを追加したいという意味でしょうか?
私にはVBAにて処理するしか思いつきません。 手順としては、
(1)集計クエリを実行させ、仮テーブルに書き出す。
(2)仮テーブルを開き、レコードを一件ずつ開き、テーブルに必要な項目を追加していく。
追加する数をを求めるためには以下の式で求められます。(x=指定された数)
([集計] mod x) + x
()は不要ですが分かりやすくするために書いてあります。
追加クエリを作ってVBAから実行させるよりは、ADOなどでいっぺんに処理させるほうが、作るのはらくだと思います。
この回答への補足
回答が遅れて申し訳ありません。
質問内容に一部誤りがありました。
集計したデータの数値だけ
データを増やす方法でした。
その前に行う集計方法についてVBAを知らない人に
説明するためにクエリーを用いて作成し説明しており、
その箇所も合わせて質問してしまいあいまいなことと
なりました。
申し訳ありません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 非表示にしたい行をグループ化して折り畳み 4 2022/09/17 20:17
- Visual Basic(VBA) 複数ファイルのデータの統合について 12 2022/05/14 12:03
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) Excel VBA 最終行を取得しVlookup関数をコピーする方法をコーディングで教えてください。 3 2023/05/11 13:14
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 2 2022/06/25 22:42
- Excel(エクセル) エクセルの複写について 4 2022/04/10 01:02
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- 高校受験 至急 塾に行かずに今から偏差値70以上を目指すのは不可能でしょうか? 不登校で、中二の後半から夢がで 15 2023/07/18 23:10
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- Excel(エクセル) エクセル・スプレッドシートで、一定数を超えたらゼロから再累計する方法 8 2022/05/28 03:52
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESSでのひとつ前レコードの...
-
クエリの結果が文字化け(Access...
-
フォーム内のデータをすべて更...
-
ACCESSでテーブルにあるチェッ...
-
Accessで、フォームに情報を入...
-
アクセスでの追加クエリでのエ...
-
Access 「主キーにはnull値を...
-
Accessでレポート内の繰り返し...
-
ACCESS2010 フィルタ後のエク...
-
ACCESSでの関数について
-
文字を含むIDの自動採番
-
アクセス レポートの行数を固...
-
ACCESS2000 更新クエリで文字...
-
Accessのオートナンバーについて
-
Accessの最大レコード数
-
MS-ACCESSにてテーブ...
-
Accessのテーブルを開いたとき...
-
差込印刷での全角表示について...
-
日付型のフィールドに空白を入...
-
アクセスのエラー「クエリには...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESSでテーブルにあるチェッ...
-
クエリの結果が文字化け(Access...
-
Accessの最大レコード数
-
Accessのテーブルを開いたとき...
-
ACCESSでのひとつ前レコードの...
-
Accessで、フォームに情報を入...
-
ACCESS2010 フィルタ後のエク...
-
Access 「主キーにはnull値を...
-
ACCESS2000 更新クエリで文字...
-
Accessでレポート内の繰り返し...
-
アクセスでの追加クエリでのエ...
-
アクセス レポートの行数を固...
-
Accessのオートナンバーについて
-
ACCESSでの関数について
-
文字を含むIDの自動採番
-
mdbの破損「データベース形式・...
-
フォーム内のデータをすべて更...
-
Accessの保存のタイミングについて
-
access レポートで表示されな...
-
インポートエラーについて
おすすめ情報