1

私は、Microsoft Access データベースを作成して顧客からのフィードバックを保存し、否定的なフィードバックが記録されたときに印刷可能なレポートを生成するというタスクを設定されています。

ユーザーがフィードバックの詳細を記録できるフィードバック フォームで、(フォームのレコード ソースが設定されている) フィードバック テーブルから取得したフィールドを連結するコードを開発しようとしています。私が目指しているのは、フィードバック テーブルの次のフィールドで構成される一意の番号を作成することです。

  • 会社名 (これは実際にはフィードバック テーブルの検索フィールドであり、会社テーブルの会社名を検索するため、フォームのコンボ ボックスであり、フォームのドロップダウン メニューとして表示されます)
  • 商品名
  • 週番号の 2 桁
  • 月の 2 桁
  • 2 桁の年 (これら 3 つの日付項目は、フィードバック テーブルのフィードバック日付と呼ばれるフィールドから抽出されます)。
  • 1 から始まる連番で、同じ会社の同じ製品に関する別のフィードバックが記録された場合、この番号は 2 に変わります。

基本的に、複製したい例は次のようになります: Company Name_Product Name_0712131

これらの連結されたフィールドの出力は、CF# と呼ばれるフィードバック テーブルの別のフィールドに格納されることになっています。

連結したい情報をデータベースに保存するには、どのようなコードを書く必要がありますか?

4

1 に答える 1

0

レコードを追加するにはさまざまな方法があります (CurrentDB.Execute({SQL コード})、ADO コマンド、DAO コマンド、DoCmd.OpenQuery) が、追加する式の作成方法を知りたいと思われます。

Dim strCustomerRef As String

'Add the Company Name (assumes the name is in the second column)
strCustomerRef = Me.cboYourComboBox.Column(1)

'Add the Product Name (assumes you have a text box bound to the product)
strCustomerRef = strCustomerRef & "_" & Me.txtTheProductNameTextBox

'Add the date info (assumes you have a text box bound to the date)
strCustomerRef = strCustomerRef & "_" & Format(Me.txtFeedbackDate, "wwmmyy")

'Add the sequence number
strCustomerRef = strCustomerRef & "_" & DCount("CustomerRef", "CF#", "[CustomerRef] Like '" & strCustomerRef & "*'") + 1

'Code to append record here
CurrentDB.Execute "INSERT INTO [CF#] ([CustomerRef], [MoreData]) VALUES ('" & strCustomerRef & "', '" & Me.txtMoreData & "')
于 2013-03-02T17:04:47.063 に答える