• ベストアンサー

「フォーム マクロをVisualBasicに変換」

アクセス2007でフォームを作りコマンドボタンを設置し コマンドボタンウィザードで 種類:アプリケーション ボタンの動作:アプリケーションの終了 をしました。 VBAの勉強中のためVBAコードを知りたいので 「フォーム マクロをVisualBasicに変換」を押しましたが 「マクロ[埋め込みマクロ]を開くことができません。継続しますか?」 と表示されてしまいます。 「はい」を押すと「変換が完了しました」と出ますが VBE画面を見ても変換されていません。 どうすればVBAコードに変換することができるのでしょうか?

  • zxdaeg
  • お礼率98% (546/553)

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

  • ベストアンサー
  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.1

http://office.microsoft.com/ja-jp/access-help/HA010030811.aspx には 以下抜粋 メモ Access により、マクロ グループを埋め込みマクロとして作成できます。ただし、イベントが発生した際に実行されるのは、グループ内の最初のマクロだけです。以降のマクロは無視されます。 [データベース ツール] タブの [マクロ] で (マクロを Visual Basic に変換) ツールを使用して、埋め込みマクロを Visual Basic for Applications (VBA) に変換することはできません。最終的にマクロを VBA コードに変換する場合は、埋め込みマクロではなく独立マクロを作成することをお勧めします。こうすることによって、[マクロを Visual Basic に変換] ツールを使用して、マクロを VBA に変換できます。 と書かれています。 どうもウィザードで作成されたマクロは[埋め込みマクロに]なるので変換不可のようです。 ウィザードでボタンを配置した直後にキャンセルボタンを押して ボタンだけは残るようにします。 そうするとボタンのキャプションが、ボタン5 とかになります。 で、ボタンのプロパティから、クリック時イベントなどにマクロを設定します。 ([…]の処をクリックして進めていってください) これで作成したマクロはナビゲーションウィンドウのマクロ欄にも出てきて Visual Basic にも変換できる・・との事です。 そうならそうと、「マクロを Visual Basic に変換」を押した時に 分かりやすく教えてくれても良さそうなモンですが。。。 Access2010でもこれは変わっていませんね。

zxdaeg
質問者

お礼

埋め込みマクロはVisual Basic に変換することは不可能なのですね。 >([…]の処をクリックして進めていってください) これで作成したマクロはナビゲーションウィンドウのマクロ欄にも出てきて Visual Basic にも変換できる・・との事です。 マクロをVisual Basicにしたい場合は上記のようにします。納得しました。ありがとうございます。

関連するQ&A

  • 既存のマクロをVBAで実行したい

    アクセスの2003です。 既にデーターベースウインドウ上に作成済みのマクロ1を フォーム上のコマンドボタンを押したときに実行するようにしたいのです。 このマクロの内容を変換コードになどして、VBE上に書き込むしかないですか? 理想としては、 Sub ボタン_Click() マクロ1を実行 End Sub のようにしたいです。 ご教授よろしくお願い致します。

  • PowerPoint VBAコマンドボタンでのマクロ

    PowerPointでVBAを使ったフォームを作製しました。 そのフォームを表示させるためマクロを書き、スライド上に コマンドボタンを配置させマクロを実行させたいと思っています。 ExcelのVBAですとコマンドボタンにマクロを割り当てるのは ツールバーのフォームのコマンドボタンで設置すると簡単ですが PowerPoint VBAですとコントロールツールボックスでのコマンド ボタンしかなくボタンにマクロを割り当てる方法が分かりません。 どなたかコマンドボタンにマクロを割り当てて実行する方法を 教えて下さい。 宜しくお願い致します。

  • アクセス・マクロの登録について

    いつもお知恵拝借、ありがとうございます。 最近、初めてaccess vbaのモジュールを作成しました。excelでは経験があったので、そのつもりで、フォームのコマンドボタンに「マクロの登録」をしようと思ったのですが、excelの時のように、右クリック→マクロの登録・・・と言うわけにはいかないようです。 いろいろネットも調べてみたのですが、どうも要領を得ません(^^;) accessのフォームのコマンドボタンに、マクロを登録するにはどうしたらいいのでしょうか? 因みに、vbeの画面から実行すると、ちゃんと動いてくれます。 基本的な質問ではなはだ恐縮ですが、どなたかご指導のほど、よろしくお願いしますm(_ _)m

  • EXCEL マクロ処理中に、他のマクロを起動(フォームボタンをクリック)できないようにする方法

    エクセルで、アクセスから外部データ取り込み処理を行なう動作を、 フォームで作成したボタンで行っています。 その動作の最中に、他のマクロを登録したフォームボタンを押すと、 最初に押したボタンの動作が中断され、最後に押した方のマクロが動作し、 その動作が完了してから、1個目のボタンの動作が途中から開始されるようなんです。 最初の動作で最新データに置き換える動作をして、次の動作でアウトプットするようにしているので、 途中で動作されると困ってしまうので、対処方法を教えて下さい。 譲り受けたファイルなので、理解不足のまま質問してすみません。 対応として、以下のような画面固定というマクロが入っていますが、 それでは有効ではないようです・・・。 Application.ScreenUpdating = False Application.ScreenUpdating = True

  • マクロをVBEコードに変換 探せない

    アクセス2010に、マクロをVBEコードに変換という機能はありますか? 2003の時はあったのですが、2010では探せません。 なくなってしまったのでしょうか?

  • フォームを使用したマクロの実行完了直後について

    Excel マクロにて、フォームを使用したマクロの実行が完了した時や、実行を中断した直後、VBE の画面がフォームにならない様にする方法はありますでしょうか? ツール> オプションでは、設定がありませんでした。

  • Access2000:フォームのテキストフォームに値を代入Part2

    前回も質問して、また違った改良が入りそうなので質問させていただきます。 マクロに「フォームを開く」を登録し、テキストフォーム値を入れることをこれまで手動でしてきました。 今回VBAを使って自動フォーム登録したいと考えています。 上記マクロをVisualBasic変換し、新たなマクロにこのVisualBasicをプロシージャとして登録させます。 DoCmd.OpenForm "フォーム名", acNormal, "", "", , acNormal 変換後上記のようなフォームを立ち上げるプログラムが生成されました。上記フォームのテキストフォーム部に値を代入させたいばあいどういう記述をしてあげればよろしいでしょうか? テキストフォームの名前は”年月”です。 Me![年月]=date ではうまくいきません。 よろしくお願いいたします。

  • Accessでレコードの保存をせずにフォームを閉じたい

    Accessでデータベースのレコード追加を行うフォームを作成しています。 コマンドボタン(1)をクリック→新しいレコードの追加 コマンドボタン(2)をクリック→フォームを閉じる としています。(ウィザードを使用して、埋め込みマクロ?を設定しています。) コマンドボタン(1)でレコードが追加されるのは問題ないのですが、 コマンドボタン(2)をクリックした場合も、レコードが追加されていることに気がつきました。 一般的に入力する人は、 データを追加しようと思って入力していたけれど、 途中でやめてフォームを閉じることってありますよね? そういう場合にレコードが追加されてしまったら問題だと思ったのです。 ですが、どうしたらレコードの追加をせずにフォームを閉じられるかがわかりません。 それって可能でしょうか? Access初心者です。難しいVBAとかはまだよくわかりません。 何か方法、アドバイス等ありましたら よろしくお願いします。

  • エクセルVBA ユーザーフォームの終了について

    エクセルVBAでユーザーフォームを作成しています。 コマンドボタンにVBAマクロを割り当てしているのですが 思うように動いてくれないので質問します。 コマンドボタンをクリックしたら望む動作 1、ワークシートを選択 2、その後、ユーザーフォームを消す。 と言う動作にしたいのですが、2の ユーザーフォームを消す方法、書き方が分かりません どなたか教えていただけないでしょうか 1の動作は以下のように書いています。その後の書き方を お願いします。 Private Sub CommandButton8_Click() ブック名 = "VBA演習" シート名 = "sheet1" Workbooks(ブック名 & ".xls").Worksheets(シート名).Activate End Sub (ユーザーフォームの名前は"テストフォーム"としてます)

  • マクロとVBAの違いは?

    最近officeのVBAを勉強してるのですが「マクロ」と「VBA」って何が違うのでしょうか? アクセスはマクロとVBA(VBE)が別れてるけど、 エクセルは「マクロの記録」でVBAコードが取得できますよね。 マクロとVBAは同じ意味なのか、違う意味なのか教えていただけますか?

専門家に質問してみよう