• 締切済み

アクセスで複数行の一括入力する方法

アクセス2000で2回目のデータベース作成です。 訪問販売用の記録を残そうと考え、試作しています。 テーブル:t_販売記録にデータを入力するための、 フォーム:f_新規販売記録を作成する際に以下が可能でしょうか? ◆集合住宅への訪問記録を入力する際に、  フィールド:住所1とフィールド:住所2(建物名)を、  その建物の総戸数分を一発でテーブル:t_販売記録に追加。 部屋番号も何とかしたと思いましたが、4のつく部屋がなかったり 101、102ではなく1A、1Bだったりするので手入力することにします。

みんなの回答

  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.2

DoCmd.RunSQLでinsertするのを覚えたので使ってみました。 Table1の単票フォームに、非連結テキストボックスと、コマンドボタンを追加する。 書き込むフィールド名をAddress1,Address2とする。 テキストボックスに複製する個数を入れ、コマンドボタンを押すと、その時表示されているAddress1,Address2を書き込んだ新規レコードが設定個数分挿入される。実用にはコード番号の自動採番といった処理も必要になるでしょうが、答えは「可能です」。 Private Sub コマンド10_Click() Dim i As Long Dim repeatCount As Long Dim mySQL As String テキスト8.SetFocus repeatCount = CDbl(テキスト8.Text) DoCmd.SetWarnings False For i = 1 To repeatCount mySQL = "Insert Into Table1 (Address1,Address2) Values ('" & Address1 & "','" & Address2 & "')" DoCmd.RunSQL mySQL Next i DoCmd.SetWarnings True Me.Requery End Sub テキストボックス、コマンドボタンの名前は試行した時の、Accessのお仕着せです。

n-aisa
質問者

お礼

mitarashiさん、ありがとうございます! 思い通りの結果が得られました。 またわからないことが質問させていただきます。 (もちろん同類の質問を検索した上で)

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.1

> フィールド:住所1とフィールド:住所2(建物名)を、 > その建物の総戸数分を一発でテーブル:t_販売記録に追加。 意味が良くわかりませんが、具体的にどうしたいのでしょうか。

n-aisa
質問者

お礼

kmetuさん、気にしていただいてありがとうございます。 mitarashiさんの回答がそのものズバリでした。 次回からはもっと具体的に質問するように気をつけたいと思います。

関連するQ&A

専門家に質問してみよう