• ベストアンサー

実行されない

アクセス初心者です プロシージャの実行をしても 答えがでてきません 何が必要なのでしょうか Option Compare Database Public Function Doreka() Doreka = 1 * 3.305785 End Function

  • s1229
  • お礼率2% (35/1729)

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

  • ベストアンサー
noname#79209
noname#79209
回答No.2

それはそうでしょうね。 実行はされても、その関数が返す結果をどうするか指定していないのでは? イミディエイトウインドで、 ? Doreka() と入力してエンターを押したら、表示されませんか?

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.1

標準モジュール(アクセスのモジュール) Public Function Doreka() Doreka = 1 * 3.305785 End Function Sub test02() MsgBox Doreka End Sub を入れtest01を実行すると 3.305785 が表示されました。 意味の無い関数だが。 関数を直接実行したのでしょう。それは旧いVB系ではダメ。

関連するQ&A

  • デバックがでない

    Option Compare Database Public Function Doreka(kazu As Integer) As Integer Doreka = kazu * 3.305785 End Function をイミディエイトのところで 実行すると 継続 終了 のみしか出てきません どうやったら、デバックを出すことができますか?

  • ACCESS マクロをモジュールに変換した後の実行

    こんにちは。 ACCESS 97 を独学で学んでいます。 初歩の初歩だと思うんですが、教えてください。 マクロ作成の例題で、電卓を起動するというのがありました。 アプリケーションの実行-電卓を開く コマンドライン-CALC.EXE とし、保存して閉じて、実行すると電卓が起動します。 そのマクロを、 ツール-マクロ-マクロをVBに変換 とすると、下記のようにモジュールに変換されます。 Option Compare Database Option Explicit '------------------------------------------------- ' マクロ1 '------------------------------------------------- Function マクロ1() Call Shell("CALC.EXE", 1) End Function このモジュールを「デザイン」で開いて、「開始」等で実行することは出来ますが、開いていないときには「実行」ボタンがグレイアウトしています。 閉じた状態で「実行」するのって、どうするんですか?

  • On Error Resume Nextを複数のプロシージャーで使うことは不可能ですか?

    Module1に ------------------------------------------- Option Compare Database Option Explicit Sub マクロ1() End Sub Sub マクロ2() End Sub ------------------------------------------- があるのですが ------------------------------------------- Option Compare Database Option Explicit Sub マクロ1() On Error Resume Next End Sub Sub マクロ2() On Error Resume Next End Sub ------------------------------------------- ではなく ------------------------------------------- On Error Resume Next Option Compare Database Option Explicit Sub マクロ1() End Sub Sub マクロ2() End Sub ------------------------------------------- これはできないのでしょうか? エラーになります。 dimもつけても駄目でした。 ひとつづつやっていくしかないのでしょうか?

  • どこにいれればいいですか

    下記のプログラムがあります Option Compare Database Public Function Doreka(kazu As Integer) As Integer Doreka = kazu * 3.305785 End Function で Debug.Print と Msgbox kazu(Msgbox(kazu)) はどこに入れればいいですか

  • マクロ subプロシージャーは指定できない?

    accessのマクロの アクション:プロシージャの実行 は、 subプロシージャーは指定できないのでしょうか? 標準モジュールに Sub test1() MsgBox "プロシージャーの実行のテストです" End Sub Function test2() MsgBox "プロシージャーの実行のテストです" End Function と作り、 マクロのプロシージャの実行で プロシージャ名をtest2()にすると、うまく表示されますが、 test1()だと、失敗します。 subプロシージャーをマクロで呼び出す方法を教えてください。

  • エクセルからアクセスのプロシージャーを実行させるには?

    エクセルの標準モジュールには→エクセル側のプロシージャー アクセスの標準モジュールには→アクセス側のプロシージャー と言う名前のプロシージャーが作成されています。 これをどちらもエクセル側で実行させることは出来ないでしょうか? 「アクセス側のプロシージャー」ではアクセス側の処理が実行されます。 でもできればエクセル側のコマンドボタンを一回押すだけで エクセルとアクセスの両方の処理を実行させたいです。 エクセルの標準モジュールには Sub エクセル側のプロシージャー() Call アクセス側のプロシージャー End Sub これを実行すると コンパイルエラーになります。 どうすれば一度で二つのアプリケーションのプロシージャーを実行させることが可能でしょうか? よろしくお願い致します。

  • マクロからFunctionプロシージャーを実行する

    マクロからFunctionプロシージャーを実行するには? 標準モジュールに Function アプリケーションのサイズを最大化する() DoCmd.RunCommand acCmdAppMaximize End Function があるのですが、 マクロからこれを実行したいのですが、見つかりませんと言う旨のエラーが発生します。 何が間違ってるのでしょうか? エラー番号は2482が表示されます。 ご回答よろしくお願いします。

  • Option Compare Database

    vbaで Option Explicit がないと、変数の宣言が強制されないけど、 アクセスには Option Compare Database がありますが、 これはどういう役目をなしてるのでしょうか? これがないとどうなるのでしょうか?

  • アクセスからエクセルのプロシージャーを実行させたい

    オフィス2007です。 ////////////////////////////////////////////////////////// ‘Excel側の標準モジュール ////////////////////////////////////////////////////////// Sub Excelのプロシージャー() MsgBox "Excelです" End Sub ////////////////////////////////////////////////////////// ‘Access側の標準モジュール ////////////////////////////////////////////////////////// Sub Accessのプロシージャー() Dim xlsWB As Object Dim MyFileName As String MyFileName = "D:\Accessからプロシージャーの実行テスト用ファイル.xlsm" Set xlsWB = GetObject(MyFileName) xlsWB.Application.Run xlsWB.Name & "!Excelのプロシージャー" Set xlsWB = Nothing End Sub の状態で、アクセス側から Accessのプロシージャー実行すると、 ////////////////////////////////////////////////////////// マクロ'Accessからプロシージャーの実行テスト用ファイル.xlsm!Excelのプロシージャー' を実行できません。 このブックでマクロが使用できないか、 またはすべてのマクロが無効になっている可能性があります。 ////////////////////////////////////////////////////////// となります。 エクセル側は、「すべてのマクロを有効にする」にしているし、エクセルファイルを単独で開き、 Excelのプロシージャーを実行すると問題なく動きます。 同じ条件で、2003で検証すると問題なく動きます。(拡張子は適宜変えてます) エクセルのパスが間違ってるのかな?と思い、適当なパスに変えたところ、 「オートメーション操作中にファイル名またはクラス名を見つけられませんでした。(Error 432)」 というエラーがでたので、パスは合ってます。 原因がわかる方、ご回答よろしくお願いします。

  • DBMS_STATS.GATHER_DATABASE_STATSの使い

    DBMS_STATS.GATHER_DATABASE_STATSの使い方がわかりません。 PLSQLで下記のように入力して実行しましたが、1時間経っても結果が返ってきません。  BEGIN   DBMS_STATS.GATHER_DATABASE_STATS (     OPTIONS => 'GATHER'    ,CASCADE => TRUE   ) ;  END; 記述が間違っているのでしょうか? DBMS_STATSの使い方がわかっていないのですが、プロシージャに埋め込まないとダメなものなのでしょうか?

専門家に質問してみよう