質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

Q&A

解決済

2回答

20085閲覧

access カレントレコードがありません

12-esta

総合スコア14

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

0グッド

0クリップ

投稿2020/06/04 11:15

Accessの「フォーム画面」で入力したデータを指定の「テーブル」に書き込むプログラムを作成しています。

指定のテーブル先にはレコードが一件も存在しない場合、つまり初めてフォーム画面を立ち上げたときにエラーメッセージが表示されます。
「カレントレコードが存在しません」と。

テーブルに一件でもレコードが存在する場合は、エラーメッセージは出ません。

アクセスのプロパティシートやVBAで、このエラーを解消することはできますか?
よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hatena19

2020/06/05 08:08

『「テーブル」に書き込むプログラム』とは、VBAのコードでしょうか。ならば、それを提示してください。
guest

回答2

0

ベストアンサー

推測ですが、フォームを開くときに何らかの処理をしているのでしょう。
Recordsetオブジェクトのカレント行が、EOF,BOFだったりする(空のテーブル)に移動とかのメソッドを実行すると当然、エラーになります。

処理する前に if 文にて制御するだけだと思います。

Access

1 If Not rst1.EOF Then 2 処理 3 End If

のようにね。

投稿2020/06/06 01:12

kai_keitai

総合スコア344

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

12-esta

2020/06/06 02:04

皆さんありがとうございました。 ベストアンサーのやり方に修正したらうまくいきました!
guest

0

こちらの環境(ACCESS 2016(32bit))ではエラーは出ませんでした。
該当フォームのプロパティはこんな感じです。
イメージ説明
「データ入力用」以降のプロパティ値を見比べてみてください。

投稿2020/06/05 02:53

DreamTheater

総合スコア1095

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問