• ベストアンサー

Access2000で、フィールド間のデータを併せる

いつも大変お世話になっております。 Access2000での質問です。 例えば、1つのテーブル内に「入荷番号」というフィールドと「入荷区分」というフィールドがあり、「入荷番号」には、「12345678」というデータが入っていて、「入荷区分」には、「A」というデータが入っているとします。 この2つのデータを合体させて「12345678A」というデータを作る(別のフィールドに作る)には、どうしたらいいのでしょうか? お手数ですが、アドバイスいただけるとありがたいです。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • doredore1
  • ベストアンサー率38% (13/34)
回答No.2

>、「入荷番号」には、「12345678」というデータが入っていて、「入荷区分」には、「A」というデータが入っているとします。 ご質問がフィールドにデータが入っているということでしたので、後から行う作業を回答させていただきました。 >合計で50件のデータになる場合でも、大丈夫なのでしょうか? この更新クエリで大丈夫だと思います。が、ご自分でも試してみてください。 入力番号と入力区分を入れた時点で結果フィールドで連結させるには、フォームで入力番号と入力区分の更新後イベントに  Me.結果フィールド = Me.入荷番号 & Me.入荷区分 でいいと思いますが、 本来、後から加工して結果の出るものはテーブルのフィールドを作らなくても 良いのではないでしょうか? >「12345678A」→「12345678」と「A」にする。 数字の桁数は任意。入力区分は一文字と言う条件で、 更新クエリで  番号 レコードの更新:Left([結果フィールド],Len([結果フィールド])-1)  区分 レコードの更新:Right([結果フィールド],1) こんな感じでしょうか? また、不明な点があったらお問合せ下さい。

xchoxcho
質問者

お礼

たびたびのお返事ありがとうございました。 こちらの要望がすべて満たされる回答でした。 私の質問の仕方が悪くてごめんなさい。 自分の中でのイメージでは、入荷番号フィールドに「12345678」を入力し、入荷区分フィールドに「A」を入れた後に、結果フィールドに「12345678A」と表示されるものをイメージしていたもので・・・ 勝手な解釈をしてすみませんでした。 これですべて解決しました。 ありがとうございました。

その他の回答 (1)

  • doredore1
  • ベストアンサー率38% (13/34)
回答No.1

こんにちは 1.テーブルに「結果フィールド」を作ります。 2.更新クエリーで「結果フィールド」のレコードの更新行を  [テーブル1]![入荷番号] & [テーブル1]![入荷区分] としクエリを実行。 以上で「結果フィールド」が 12345678Aになるかと思います。 ご質問の意味が違いますか?

xchoxcho
質問者

お礼

ありがとうございます。 質問の内容と一致しています。 ただこの場合、それぞれのフィールドに値を入力した「後」に行うということですよね? たとえば、最初は20件のデータがあり、実行し、そのあと30件増えて、また実行し、合計で50件のデータになる場合でも、大丈夫なのでしょうか?

xchoxcho
質問者

補足

また、厚かましくて大変申し訳ないのですが、逆を実行することはできますか? 「12345678A」→「12345678」と「A」にする。 もし分かれば併せて教えてください。 お手数おかけします。