- 締切済み
Accessのマクロ
フォームに貼り付けたボタンがクリックされた時、作成しておいたマクロが動くようにするには、ボタンのプロパティーで『クリック時』から作成したマクロを選びます。 ここで素朴な疑問なのですが、例えば「M住所録」と言うマクロがあります。 そのマクロには「削除(表示されているレコードを削除する)」と「新規作成(新規入力レコードへジャンプ)」の2つの機能が作成されています。 こうゆうマクロをボタンのプロパティーの『クリック時』からドロップダウンリストで見ると、 M住所録 M住所録.削除 M住所録.新規作成 と言う風に表示されています。 試しに一番上の「M住所録」を選んでも何も動作しません。 一番上に表示されている「M住所録」は意味があるのでしょうか?
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- DexMachina
- ベストアンサー率73% (1287/1744)
- CHRONOS_0
- ベストアンサー率54% (457/838)
関連するQ&A
- Access2002のマクロについて
フォームに「登録」ボタンを作成して、その「登録」ボタンをクリックすると、入力中のレコードが確定するようにしたいのですが、このようなマクロを組むことは可能でしょうか? Accessのマクロはかなり初心者なのですが、ご存知の方教えてください_(_^_)_
- ベストアンサー
- オフィス系ソフト
- Access「レコードの移動」マクロについて
表形式でフォームを作っています。 そして、コマンドボタンを使って、「レコードの移動」ができるように、マクロを使って アクション 「レコードの移動」 ---アクションの引数---- オブジェクトの種類---フォーム オブジェクト名-------問題 レコード-------------次のレコード オフセット-----------4 としています。(コマンドボタンを1回押すと、4件ごとに画面を動かしたい) しかし、 問題NO---------問題 1----------なん 2----------ああ 3----------なな 4----------ああ □←これがコマンドボタン コマンドボタンに「クリック時」にマクロが実行できるように設定をして クリックすると 問題NO---------問題 2----------ああ 3----------なな 4----------ああ 5----------いい □←これがコマンドボタン となってしまいます。そして再度コマンドボタンを押すと 9----------がが 10---------ss 11---------ff 12----------ああ □←これがコマンドボタン ------------------------------------- になってしまいます。なので、オフセットを4から7に変えると 1回コマンドをクリックすると先頭にくる番号は「8」になったり・・・困りました。 で、フォームには1-4のレコードが表示されるようにし、コマンドボタンを1回押すと5-8、9-12と表示させたいのです。 とできれば、(全部で160行あるのですが)最終行のフォームが出てきて、コマンドボタンをクリックしてもマクロ実行エラーが出ないようにもしたいです。 よろしくお願いします。 Accsee2000 WIN98
- ベストアンサー
- オフィス系ソフト
- エクセル マクロ教えて下さい。
作成してあるマクロボタンを実行した時に下記の処理をしたい。 ●手順 1・表作成ボタン(作成済)をクリックする 2・MsBoxを表示する 3・Yesの時は、セルAIの数式を削除して表を作成する(マクロは作成済) 4・Noの時は、セルAIの数式を削除しないで表を作成する(マクロは作成済) 5・Cancelの時は何もしないで中止する ●手順2~5の記述を御指導お願い致します。 尚、表作成ボタンと表作成マクロは作成済です
- ベストアンサー
- オフィス系ソフト
- accessマクログループの全マクロの実行方法
お世話になります。 現在、顧客のデータベースを作成しております。DBは名前、住所等の連絡先を入力したテーブルを元に下記のクエリやマクロを作成しています。取引がない顧客等はメイン名簿テーブルから削除して、メインテーブルの構造をコピーした、削除テーブルに入れるようにしたいと考えています。 そこで下記のテーブル、クエリ、グループマクロを作成しました。グループマクロは作成したクエリ3つで構成されています。各アクションクエリは一個一個は正常に作動するのですが、グループマクロを実行しますと、1行目のクエリしか実行されません。実行方法はマクロの画面で更新ボタンを押しても、フォームに削除というボタンを作成してクリック時にグループマクロを実行させるよう設定した場合の両方で起きます。 グループマクロに登録されているマクロを全て実行するにはどうしたらいいのでしょうか。色々調べると、グループマクロは1行目しか実行できないようですが、全て実行する簡単な方法はありませんか?できればVBAではない方法を希望します。大変お手数ですがどうぞ、よろしくお願い致します。 ・(テーブル)メイン名簿(以下、名簿tblとします) ⇒フィールド:名前、郵便番号、住所、電話、メモ欄、削除の有無、削除処理日 ・(テーブル)削除テーブル(以下、削除tblとします) ⇒フィールドは上記と同じ ・(更新クエリ)削除処理日追加 ⇒名簿tblの「削除の有無」フィールドにyesと入力されていれば、「削除処理日」に処理日が 入力されるようにdate関数を設定しています。(date()) ・(追加クエリ)削除tblへ追加 ⇒名簿tblの「削除の有無」フィールドにyesと入力されていれば、「削除tbl」へそのレコードを、 追加する。 ・(削除クエリ)名簿tblからの削除 ⇒名簿tblの「削除の有無」フィールドにyesと入力されていれば、名簿tblからそのレコードを、 削除する。 ・(マクログループ)削除処理(上から順番に実行希望) マクロ名 アクション クエリ名 削除処理日追加 クエリを開く (更新クエリ)削除処理日追加 削除tblへコピー クエリを開く (追加クエリ)削除tblへ追加 名簿tblからの削除 クエリを開く (削除クエリ)名簿tblからの削除 以上
- ベストアンサー
- オフィス系ソフト
- Accessマクロの抽出でどうしたらいいでしょうか?
図のようにフォームには商品テーブルのフィールドを配置しています。 上のテキストボックスには、[商品グループ]の値と等しいレコードを抽出するよう入力します。 [抽出]ボタン:フィルタを実行 [解除]ボタン:フィルタを解除して、すべてのレコードを表示 それぞれクリック時のイベントに割り当てたマクロは以下です。 《マクロ名》《アクション/引数》 《値》 抽出 フィルタの実行 Where条件式 [商品グループ]=[Forms]![抽出]![txtキー] 解除 全レコードの表示 値の代入 アイテム [txtキー] 式 NULL このようにしましたが、フィルタはフォームの起動時初回は出来ますが、[解除]ボタンを押して[抽出]ボタンを押すと再度の抽出はできません。 初回の1回だけは抽出できるんですけど・・・続けて抽出できるようにするにはどうしたらいいでしょうか?
- ベストアンサー
- オフィス系ソフト
- アクセスのマクロでの再検索
ACCESSで住所録を作っています。 入力のためにフォームを作成し、そのフォーム上にボタン「検索」「すべて表示」を作りたいと思っています。 マクロ 1.「検索」はアクションを「フィルタの実行」、フィルタは別にクエリで作成し、別に用意したテキストボックスに文字を入れてボタンを押すことによって検索できるように設定しました。 2.「すべて表示」は1つめのアクションが「全レコードの表示」、2つめのアクションが、検索文字を入れるテキストボックスへの「値の代入」で「""」を指定しました。 これでやってみたのですが、1回目の「検索」はうまく働くのですが、「すべて表示」して、2回目以降「検索」ボタンを押しても、1回目と同じ結果しか出てきません。 この2つのボタンが正しく働き、再検索ができるようにするにはどうすればよいのでしょうか? モジュールを作成するのでしょうか? ぜひご指導をお願いいたします!
- 締切済み
- オフィス系ソフト
- アクセスのマクロ設定について
アクセスにてフォームを作成しています。 フォーム(フォーム1)に別のフォーム(フォーム2)を開くボタン(マクロ)を作成しました。 フォーム1の主キーと同じキーのレコードを指定して、フォーム2で 開かせたいのですが、どのようにマクロを設定すれば良いのでしょうか。 前のレコードや先頭のレコードへの移動はメニューから選択できた ので分かったのですが、上記の方法は分かりませんでした・・・。 何卒よろしくお願い致します。
- 締切済み
- オフィス系ソフト
- ACCESSのマクロに関しまして
お願いします。 ACCESS97で追加クエリを作成し、その後自動起動にしようと思い、マクロで追加クエリを項目に入れマクロを作りました。 マクロを作成する際に、モジュールでレコード追加するテーブルを一度削除しようと思い、「DELETE文」でモジュールを作成し、マクロの追加クエリの前に「プロシージャの実行」でモジュールのプロシージャを実行するようマクロに記述しました。 <マクロ内容> (1)「プロシージャの実行」 (追加クエリで追加するテーブルの中身をDELする) (2)「クエリを開く」 (追加クエリでレコード追加) この用に記述し、マクロ名を「AutoExec」で記述して、ファイルを実行してもマクロが起動しません。 (1)の「プロシージャの実行」までは、実行されているようなのですが(テーブル内確認)、以降の追加クエリが実行されません。 何か他の設定があるのでしょうか? お願い致します。
- ベストアンサー
- オフィス系ソフト
- Accessでのレコードの削除時の表示について
いつもお世話になります。基本的なことかもしれませんがAccess初心者でよくわからないので 教えて下さい。 Access2010でテーブルからレコードを読み出すフォームを作成し、そのレコードを削除するため、 フォーム上に削除ボタンを設定しました。 削除ボタンをクリックすると小さなウインドウが開き下記のようなメッセージが表示されます。 1件のレコードを削除します。 「はい」をクリックすると、削除したレコードを元に戻すことはできません 「はい(Y)] 「いいえ(N)] メッセージのウインドウの下には読みだしたレコードのフォームが表示されていますが、 キーとなる顧客コード(数字6桁)の欄には #エラー と表示され、その他の項目はすべて ブランクになります。 「はい」をクリックするとレコードは削除されるので処理的には問題ないのですが、 削除する前に確認するためフォーム上の項目を表示したまま残したいです。 どのようにすればよいでしょうか? 削除ボタンのクリック時の埋め込みマクロの内容は以下のように設定しています。 エラー時 移動先 次 マクロ名 コントロールの移動 コントロール名 = [Screen].[PreviousControl].[Name] マクロエラーのクリア If not [Form].[Newrecord] Then メニューコマンドの実行 コマンド レコードの削除 If文の最後 If [Form].[Newrecord] And Not [Form].[Dirty] Then 警告文 If文の最後 If [Form].[Newrecord] And [Form].[Dirty] Then メニューコマンドの実行 コマンド レコードを元に戻す If文の最後 If [MacroError] <> 0 Then メッセージボックス メッセージ = [MacroError].[Description] 警告音 はい メッセージの種類 なし メッセージのタイトル If文の最後 ウインドウを閉じる オブジェクトを閉じる オブジェクトの種類 オブジェクト名 オブジェクトの保存 確認 参考にしたAccessのプログラムから削除ボタンをコピーしたため、これが適しているかどうか わかりません。 よろしくお願いします。
- ベストアンサー
- その他(データベース)
補足
回答ありがとうございます。 とても興味深く読ませて頂きました。 実際に試してみたいと思います。 ちょっと時間がかかるかもしれませんが後日結果報告申し上げます。