OSはWindows98SE
SoftはAccess2000です。
現在Accessに、約5000件くらいの既存データがあります。(主キー:主索引)
-----------------------------------------------------------------
主索引| 発注番号| 発注日 |担当者|販売先|商品番号|商品名・・・
-----------------------------------------------------------------
00000001|0000000111|20011001| 03 |1001| A001 |ボイド
00000002|0000000222|20011005| 05 |1003| B004 |塩ビパイプ
・ ・ ・ ・ ・ ・ ・
・ ・ ・ ・ ・ ・ ・
そこへ約50件くらいのTXTデータを新しく追加及び、既存データに対して追加変更があったデータに修正(上書き)をしたいのですがどなたか教えていただけないでしょうか。
自分なりに、更新クエリを使ってみたり、VBの本を読んだりしたのですがよくわからず悩んでいます。。
何かヒントとなるものでも結構です。
説明が下手で申し訳ありませんがどうぞよろしくお願い致します。
No.5ベストアンサー
- 回答日時:
まず、どこまで解かってて、どこから解かっていらっしゃらないのか解かりませんが(^^;、一から説明してみたいと思います。
現在AccessにあるテーブルをA、約五十件というデータをBというテーブルにインポートしたとします。
Aに無いデータを追加する方法・・・フィールド名・数共に同一であると仮定してあります。
この場合、不一致クエリを使用してAに含まれていないデータを抽出後、そのデータをテーブルに追加クエリを用いて追加します。
具体的には(今後のためにウィザードは使用しません)、
1)新規クエリをデザインビューで開く。
2)A、Bを「テーブルの表示」より追加する。
3)Aの「主索引」にBの「主索引」をドラッグする。
4)結合線が表示されるのでダブルクリックし、「結合のプロパティー」を表示する。
5)「Bの全レコードとAの同じ結合フィールドのレコードだけを含める」を選択。
6)Aの「主索引」をダブルクリックしてクエリにフィールドを追加。
7)フィールドの「表示」チェックをはずし、「抽出条件」に「Is Null」と記述。
8)Bの「*」をダブルクリックして全てのフィールドをクエリに追加。
ここまでで不一致クエリ(Aに無いデータの抽出)は終了です。適当なクエリ名(仮にIQ_Cとします)をつけて保存します。
このクエリを追加クエリに変更します。
9)IQ_Cをデザインモードで開く。
10)メニューバーより「クエリ」→「追加」を選択。
11)追加先を要求されるのでAを選択。
12)抽出条件に「Is Null」が入力されている列の「レコードの追加」(主索引となっていると思いますが)を削除(Delete)
これで完成です。
デザインモードで一度開いた後にビューに切り替えると追加されるレコードが表示されます。また、クエリをダブルクリックすれば追加クエリが実行されます。
長くなりましたが、お役に立てれば幸いです。
ご丁寧なアドバイスありがとうございます。
また、返事がおそくなり申し訳ありません。
いただいたアドバイスなら私にも出来そうですので早速実行させていただきます。
本当にありがとうございました。
No.6
- 回答日時:
本は2冊位用意した方が良いと思います。
1.アクセスの操作、入門用
エクスメディア社
長図解 access2000 クエリー&応用編
http://www.x-media.co.jp/
2.アクセスの少しこったことをしたい用
秀和システム社
access2000パーフェクトマスター
http://www.shuwasystem.co.jp/
私の場合は、この2冊でした。しかし本屋で立ち読みして比べて見るのが良いかと思います
どれにせよ山は高いです。こつこつやりましょう。
魔法使いの開発工房というHPも紹介します
参考URL:http://www.people.or.jp/~Niki/
アドバイスありがとうございます。
返事が遅くなりまして申し訳ありません。
本と、HPの紹介ありがとうございます。
本は早速本屋さんに行ってこようと思います。
また、魔法使いの開発工房は私も最近、入門&基本コースをこつこつとはじめ
とても勉強になっています。
山は高いですが、一つずつ消化しながらがんばって行きたいと思います。
そして私もk ebaさんやWatapo3の様にわかりやすく他の人にアドバイスが出来るようになりたいと思います。
本当にありがとうございました。
No.4
- 回答日時:
>同じテープルに複数のクエリを
別にかまいません
使用考え方
1.テーブルを更新クエリを使用して並列処理で使う
1)発注番号更新クエリー
2)発注日更新クエリー
のように使う
2.分類毎にクエリーを直列処理で使う
1)発注日を指定するクエリー
2)1)のクエリーをインプットにして発注日、担当者クエリー
のようにつかう
なにか有れば補足して下さい。
この回答への補足
重ねて回答ありがとうございます。
また、お返事が遅くなりすみません。
知識不足で申し訳ありませんがクエリ(SQL?)に詳しくないもので、
早速、やってみようと更新クエリを選択したまでは良かったのですが、記述する用語(文法?)がわからずに悩んでしまいました。f^^;
どこかにサンプル等のあるところなどございましたら教えていただけるとうれしいのですが、たびたびすみませんがよろしくお願いいたします。
No.3
- 回答日時:
>マクロはどのマクロを使用したらよいのでしょうか?
ここで言うマクロとは、
テーブル、クエリー、フォーム、レポート、マクロのマクロです
具体的に機能は、アクセスの機能を登録(カタログ)しておく物です
例)更新マクロ
1.メッセージの設定 (いいえ)
2.テーブルを開く (更新TBL)
3.コマンドの実行 (全てのレコードの選択)
4.コマンドの実行 (レコードの削除)
5.テキスト変換 (更新TBL)
6.クエリーの実行 (更新クエリー)
以上です
がんばって下さい。
回答ありがとうございます。
また、わかりやすい回答で助かりました。
早速がんばってやってみます!
本当にありがとうございました。
No.2
- 回答日時:
TXTデータにリンクを貼り、両方に共通のキーがあるのであれば、重複クエリ・更新クエリ・追加クエリ等でVBAを使わずともできるのではないのでしょうか。
但し、とりあえず何か別の新たなテーブルに一度インポートしてから同様の操作をした方がレスポンスは上がると思いますが・…
共通の主キー等が記述されていませんので具体的にはアドバイスできませんが(^ ^;
この回答への補足
早速のアドバイスありがとうございます。
説明が足りずすみません。共通の主キーは「主索引」となっています。
知識が浅く申し訳ありませんが、同じテープルに複数のクエリを使うことが出来るのでしょうか?
お手数ですが、そのあたりをご教授いただけたら幸いです。
No.1
- 回答日時:
TXTのデータで直接修正するのは無理があると思います。
したがって
TXTのデータを更新TBLにインポートする
原本TBLと更新TBLで更新クエリーを作成して
更新する
と言う案ではいかがでしょうか
ステップ数は多くなりますがマクロで登録しておけばクリック1発です
がんばって下さい。
早速のアドバイスありがとうございます!
一度、TXT自体をテーブルにしてそれから更新クエリーをおこなう!
ぜんぜん思いつきませんでした。
ありがとうございます!
大変恐縮ですが、マクロはどのマクロを使用したらよいのでしょうか?
ご教授いただけたら幸いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
- その他(データベース) c言語の問題です。これを踏まえてコーディングしたいのでおしえていただきたいです。 3 2023/08/03 09:27
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- Excel(エクセル) VBAで同フォルダ内の別ブックを開かず参照して条件の一致する行の指定セルを抽出するには? 1 2022/07/21 19:29
- その他(車) 古い普通乗用車の更新終了しているナビを何とか使える方法はないものでしょうか? 5 2023/02/18 23:05
- システム 古いWEBシステム。もう追加プログラムは作れない? それともできる? 6 2022/06/08 13:41
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Visual Basic(VBA) 【困っています2】VBA 追加処理の記述を教えてください。 2 2022/08/26 11:42
- Visual Basic(VBA) VBAでの共有パスにつきまして 1 2023/03/04 17:24
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
access・カウント結果がゼロで...
-
ACCESSで2つのテーブル比較で...
-
追加先の発見方法(SQL以外)
-
access:連続データ入力
-
ACCESS クエリで重複データを最...
-
ACCESS クエリで、グループ化...
-
ACCESSでクエリを作成したら「...
-
ACCESSにてフィールド間の最小...
-
ACCESSのフォームからデータの...
-
Accessのフォーム上にレコード...
-
アクセスでテーブルの変更内容...
-
ACCESS Yes/No型の集計
-
Accessのフォームに表示...
-
アクセス 0以外をカウントす...
-
アクセスで前年対比を出す方法...
-
RPGツクールVX 戦闘後、フィー...
-
テキストボックスの値をテーブ...
-
Access2010 携帯番号にハイホン...
-
ACCESSで、フォームのレコード...
-
Access クエリの更新結果をテ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESS クエリで重複データを最...
-
ACCESSでクエリを作成したら「...
-
access・カウント結果がゼロで...
-
ACCESS クエリで、グループ化...
-
「データベースまたはオブジェ...
-
クエリで「データ型が一致しま...
-
ACCESSにてフィールド間の最小...
-
SQLで優先順位が高いレコードを...
-
追加先の発見方法(SQL以外)
-
accessで選択クエリで得た全レ...
-
access:連続データ入力
-
Accessのフィルタ検索でデータ...
-
アクセスでフォームが更新でき...
-
ACCESS クエリー 抽出条件が...
-
ユニオンクエリについて
-
ACCESSで2つのテーブル比較で...
-
Access あるクエリを利用して...
-
Accessで「クエリーが複雑すぎ...
-
ACCESS のクエリー実行に異常に...
-
Accessのクロス集計クエリから...
おすすめ情報