Microsoft Access Club Access超初心者対象Forum Access初級者対象Forum Access初・中級者対象Forum Access VBA Tips Forum DAO、ADO、SQL Forum

     

リストへもどる

投稿記事の一括表示

タイトルデータ入力用フォームを再クエリするとレコード追加してしまう
記事No172351
投稿日: 2018/07/25(Wed) 13:18
投稿者キラ
解決済: ON
OS:
Access Version:

初めてご質問します。宜しくお願いします。

OS win10 Access 2013

データ入力用フォームをメインフォームとし、サブフォームにはデータビューを表示しています。
メインフォームのテキストへ入力するとサブフォームに過去に登録がないか検索できるように、クエリで抽出しているのですが、再クエリするとレコードが追加されてしまいます。
検索による確認と登録を行うフォームを作成したいのですが、ご教授ください。

タイトルRe: データ入力用フォームを再クエリするとレコード追加してしまう
記事No172352
投稿日: 2018/07/25(Wed) 13:22
投稿者ナバ
解決済: ON
こんにちは。

> メインフォームのテキストへ入力するとサブフォームに過去に登録がないか検索できるように、クエリで抽出しているのですが、再クエリするとレコードが追加されてしまいます。

その「再クエリする」はどのように行っていますか?

タイトルRe^2: データ入力用フォームを再クエリするとレコード追加してしまう
記事No172353
投稿日: 2018/07/25(Wed) 13:24
投稿者キラ
解決済: ON
ご質問ありがとうございます。

> その「再クエリする」はどのように行っていますか?

マクロから再クエリを行っております。

タイトルRe^2: データ入力用フォームを再クエリするとレコード追加してしまう
記事No172354
投稿日: 2018/07/25(Wed) 13:43
投稿者キラ
解決済: ON
> その「再クエリする」はどのように行っていますか?

追記します。

テキストボックスのプロパティシート イベント フォーカス喪失時
マクロからコントロール名を指定せずに再クエリしております。

タイトルRe^3: データ入力用フォームを再クエリするとレコード追加してしまう
記事No172355
投稿日: 2018/07/25(Wed) 14:51
投稿者ナバ
解決済: ON
> マクロからコントロール名を指定せずに再クエリしております。

コントロール名を指定していないのでフォーム自体が再クエリされてしまっているのではありませんか?
サブフォームのコントロール名を指定したらどうでしょうか。

タイトルRe^4: データ入力用フォームを再クエリするとレコード追加してしまう
記事No172356
投稿日: 2018/07/25(Wed) 16:55
投稿者キラ
解決済: ON
ナバさん、ありがとうございます。

> サブフォームのコントロール名を指定したらどうでしょうか。

早速、なんとかコントロール名を指定し再クエリしてみたのですが、下記のエラーが出て進めません・・・

指定した式は、いずれかの引数とデータ型が対応していません。
マクロを実行しようとしたか、アクションを実行するメゾットを使おうとしましたが、式の評価結果のデータ型が正しくありません。

エラー番号2950

タイトルRe^5: データ入力用フォームを再クエリするとレコード追加してしまう
記事No172358
投稿日: 2018/07/25(Wed) 17:15
投稿者ナバ
解決済: ON
> 早速、なんとかコントロール名を指定し再クエリしてみたのですが、下記のエラーが出て進めません・・・

実際にはどのように書いたのですか。

それは本当にサブフォームのコントロール名ですか(サブフォームの元になったフォーム名やテーブル名ではありませんか)

タイトルRe^6: データ入力用フォームを再クエリするとレコード追加してしまう
記事No172359
投稿日: 2018/07/25(Wed) 17:25
投稿者キラ
解決済: ON
>
> 実際にはどのように書いたのですか。
>
> それは本当にサブフォームのコントロール名ですか(サブフォームの元になったフォーム名やテーブル名ではありませんか)

=[forms]!
[メインフォーム名]!
[サブフォーム名(サブフォームのプロパティシートのソースオブジェクト名)].
[form]!
[サブフォームコントロール名(サブフォームのプロパティシートの名前)]

上記でコントロール名を指定しました。

タイトルRe^7: データ入力用フォームを再クエリするとレコード追加してしまう
記事No172360
投稿日: 2018/07/25(Wed) 17:34
投稿者ナバ
解決済: ON
> =[forms]!
> [メインフォーム名]!
> [サブフォーム名(サブフォームのプロパティシートのソースオブジェクト名)].
> [form]!
> [サブフォームコントロール名(サブフォームのプロパティシートの名前)]
>
> 上記でコントロール名を指定しました。

その書き方は別フォームに対する参照の書き方です。
マクロで同じフォーム上ならば、=も[]もなしで、サブフォームコントロール名だけでいいですよ。

タイトルRe^8: データ入力用フォームを再クエリするとレコード追加してしまう
記事No172361
投稿日: 2018/07/25(Wed) 17:55
投稿者キラ
解決済: ON
ナバさん!できました!

> その書き方は別フォームに対する参照の書き方です。
> マクロで同じフォーム上ならば、=も[]もなしで、サブフォームコントロール名だけでいいですよ。

難しく考えすぎてました!
ありがとうございます(*^-^*)

また、機会があればご教授ください!

タイトルRe^4: データ入力用フォームを再クエリするとレコード追加してしまう
記事No172357
投稿日: 2018/07/25(Wed) 17:14
投稿者キラ
解決済: ON
ナバさん
何度もすみません。

> サブフォームのコントロール名を指定したらどうでしょうか。

サブフォーム名とサブフォームコントロール名を間違えて指定しておりました。
直したところ別のエラーが表示されます。

Visual basic プロシージャでOLEオブジェクトとして参照しているオブジェクトは、OLEオブジェクトではありません。

- 以下のフォームから自分の投稿記事を修正・削除することができます -
処理 記事No パスワード

ページの先頭へ 前ページへ戻る