Form_Open ’開くとき
Form_Load ’読み込み時
Form_Current ’レコート゛移動時
Form_Activate ’アクティブ時

これはどの順番で実行されるのでしょうか?

それと
もしほかに起動時に実行されるイベントがあれば教えてください。
よろしくお願い致します。

A 回答 (2件)

下記は自信はありません。

これではダメなのかも知れないが、何かの参考に。
ーー
Public i

Private Sub Form_Current()
i = i + 1
MsgBox "C" & i
End Sub

Private Sub Form_Load()
i = i + 1
MsgBox "L" & i
End Sub
Private Sub Form_Open(Cancel As Integer)
i = i + 1
MsgBox "O" & i
End Sub
Private Sub Form_Activate()
i = i + 1
MsgBox "A" & i
End Sub
をそのフォームのイベントプロに入れて、フォームを開くを行うと
私のテストでは、順に
O1
L2
A3
C4
と表示されましたが。
ーー
>起動時に実行されるイベントがあれば教えてください
上記以外は操作者のマウスでの行動や操作のタイミング時やプログラムの実行時に起こるものなので、質問の類とは別と思います。
Onconnectも疑ったが、
http://www.feedsoft.net/access/tips/tips91.html
の解説を見て、ピボット利用の限定的な場合らしい。
ほかもこの一覧をみて考えてください。
    • good
    • 0
この回答へのお礼

コピペして試してみたら同じ結果になりました!
すべてフォームが表示される前に発生するのですね。
ありがとうございます。

お礼日時:2009/05/27 22:05

こちらのサイトが参考になると思います(Microsoft Access2003のヘルプ):


http://office.microsoft.com/ja-jp/access/HP05186 …
(「+フォーム及びサブフォームのイベントの順序」の「+」をクリックして下さい)

> フォームを開くと、フォームでは次の順序でイベントが発生します。
> Open → Load → Resize → Activate → Current
>
> フォームに使用可能なコントロールがない場合は、Activate イベントの後、
> Current イベントの前に、GotFocus イベントが発生します。

従って、

 開くとき(Open) → 読み込み時(Load) → サイズ変更時(Resize)
 → アクティブ時(Activate) ( → フォーカス取得時(GotFocus) )
 → レコード移動時(Current)

ということになるかと思います。
(もちろん、それぞれのイベントで行った操作によって別のイベントが発生した
 場合(例えば開くときに、前回起動時に表示して削除し損ねた暫定レコードを
 削除したことによる「レコード削除時」イベントの発生など)は、上記以外の
 イベントも発生します)
    • good
    • 0
この回答へのお礼

ありがとうございます。
Resizeも含まれるとは思ってませんでした。

お礼日時:2009/05/27 22:04

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QExplorerのフォルダをダブルクリックで折りたたむ設定方法教えて下さい

Explorerのフォルダをダブルクリックで折りたたむ設定方法教えて下さい

(何かの拍子でダブルクリックで折りたためましたが
正確に設定する方法がわかりません)

Aベストアンサー

フォルダの横にある「-」をクリックすると、たたまれて「+」になります。
逆も出来ます

QWord起動時のエラー「実行時エラー'5'」

実家のPCのエラーのご相談です。
あと1時間ほどで帰宅するのでその前にアドバイスをいただけると、、、

◆トラブル内容:

ワードを立ち上げようとすると
Microsoft Visual Basicのエラー表示がでます。
このエラーが出ないようにしたいのですが、
方法がわからず、お力添えをお願いします。

◆エラー内容:

実行時エラー'5':
プロシージャの呼び出し、または引数が不正です。

終了およびヘルプボタンのみ有効です。
ヘルプボタンを押すとヘルプの該当項目が表示されます。


◆ヘルプの内容:

プロシージャの呼び出し、または引数が不正です。(Error 5)
呼び出しの一部が完成できません。エラーの原因と対処方法を次に示します。

引数が許容値の範囲を超えている可能性があります。たとえば、Sin 関数で扱える値の範囲は決まっています。2,147,483,648 未満の値は有効ですが、2,147,483,648 ではエラーになります。
引数に指定できる値の範囲を確認します。

現在のプラットフォームで無効のプロシージャを呼び出そうとするときにも、このエラーが発生します。たとえば、Microsoft Windows または Macintosh のみで使用できるプロシージャなどがあります。
プロシージャについてのプラットフォーム固有の情報を確認します。

詳細については、目的の項目を選択して F1 キー (Windows) または Help キー (Macintosh) を押してください。

                          以上コピペ終わり


マクロで見たことのあるエラー表示ですが、エクセルマクロでは
デバッグで凌いだり、不要なマクロはモジュールの解放等と、多少の
対処法を学んだのですが、ワードマクロはまったく未経験でヘルプの内容も
理解出来ません。

親孝行の真似事でも出来れば、と質問致しました。
御力添えをお願いします。

実家のPCのエラーのご相談です。
あと1時間ほどで帰宅するのでその前にアドバイスをいただけると、、、

◆トラブル内容:

ワードを立ち上げようとすると
Microsoft Visual Basicのエラー表示がでます。
このエラーが出ないようにしたいのですが、
方法がわからず、お力添えをお願いします。

◆エラー内容:

実行時エラー'5':
プロシージャの呼び出し、または引数が不正です。

終了およびヘルプボタンのみ有効です。
ヘルプボタンを押すとヘルプの該当項目が表示されます。


◆ヘルプ...続きを読む

Aベストアンサー

これ・・・でしょうか?
http://support.microsoft.com/kb/267572/ja

Q中ボタン(ホイール)をダブルクリックに設定できるマウスドライバ

現在、Logitech の mw9791jpn.exe というマウスドライバを使っており、中ボタン(ホイール)をダブルクリックに設定しています。マウスは Microsoft のホイールマウスです。

中ボタンのシングルクリックでダブルクリック動作ができるので、とても重宝しているのですが、最近、この中ボタンによるダブルクリックが効かないアプリケーションが出てきました。
(例: PaintShop Pro 9、GoldWave 5.08)

おそらくはドライバの不具合と思われ、サポート窓口にも問題を報告していますが、現在のところ未対応の状況です。

そこで、他のマウスドライバを探しているのですが、どなたか Logitech 以外で「中ボタン(ホイール)の押下をダブルクリックに設定できる」マウスドライバを、ご存じないでしょうか?

できればフリーのものが望ましいですが、有料でもかまいません。
よろしくお願いします。

Aベストアンサー

#2です。
うまくいきませんか。こちらの環境(WIN98SE)ではPSPver.6で動作したので大丈夫かなと思ったのですが。
そのマウスカーソルが変化するだけで動作しないのは、どのアプリケーションでも起こる現象でしょうか?だとすると使用しているマウスドライバが影響しているのかもしれません。標準のドライバにしてみてはどうでしょうか。特定のアプリケーションで発生しているとすると難しいかも。クラス名で設定するともしかしたら…
答えになってなくてすみません。

Q実行時エラー'-2147467259(80004005)':

エクセルからADOでアクセスに繋ごうとしたときに
実行時エラー'-2147467259(80004005)':
マシン'マシン名'のユーザー'Admin'がデータベースを開けない状態、またはロックできない状態にしています。

というエラーが出てしまいます。

書いているコードは以下です。

Public cn As ADOdb.Connection
Set cn = New ADOdb.Connection
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb"



test.mdb自体はテーブルもクエリもフォームも何も開いていない状態です。
一度アクセスを終了させて再起動させればうまくできるのですが、何が原因でこのメッセージが出るのでしょうか?
もしわかれば教えてください。
よろしくお願いします。

Aベストアンサー

Accessで、test.mdbを開いた状態(テーブルも、クエリも、フォームも何も開かない状態)で、ExcelからADOで接続しようとすると、
「-2147467259"は既に使用されているので、使用できませんでした。」
というエラーが再現されました。(当方Office2000Pro)
そういうものなのでしょう。
何をなさりたいのですか?
AccessからExcelを起動して、データの移し替えをしたり、レポート代わりに印刷させたりという方法ではダメなのでしょうか?
何をしたいかという、切り口で質問をされてはいかがですか。

Qフォルダをダブルクリックした時の優先動作の設定方法を教えてください!

WindowsXP Professionalを使用しています。
いつの頃からか、フォルダを開こうとダブルクリックすると、検索結果が開くようになりました。
フォルダを右クリックした際のメニューを見ると、"検索"が太字の状態になっています。

ネット等で調べ、フォルダオプションのファイルの種類タブを開き、
ファイルの種類"フォルダ"の詳細設定でアクションを選択すれば良いと持ったのですが、
openを選んでもexplorerを選んでも"検索"が太字になったままで症状が変わりません。
同じOSを使用している周りの人は、上記設定でダブルクリック時の動作が変更できるのですが、
逆に"検索"を設定する事は出来ないようです。

上記のような症状のPCに対し、ダブルクリックした際に、
普通にフォルダを開くように設定変更する方法がありましたら教えてください。

よろしくお願いします!

Aベストアンサー

以下の方法で、解決しないでしょうか??

これに限らず、色んなトラブルの対処法が載っているので
ぜひ参考にしてみてください。



http://homepage2.nifty.com/winfaq/c/trouble.html#578

参考URL:http://winfaq.jp/

QVBAの実行時エラー'2522'について

前任者がAccess2003により作成したデータベースがあります。
CSVデータを取り込む仕組みがあるのですが、下記のエラーが出て困っています。

実行時エラー '2522':
このアクションまたはメソッドを実行するには[File Name/ファイル名]引数が必要です。

どうやらVBAによるエラーだと判明しましたが、それ以上はよくわかりません。
以下のような構文になっています。

Option Compare Database
----------
Private Sub CSV取込_Click()
TextConv strFileName, "マスター定義", "T_マスター"
End Sub
----------
Sub TextConv(strFle, strInp, strTbl)
Dim strSQL As String
strSQL = "DELETE * FROM " & strTbl
If MsgBox("テーブルデータを更新しますか?", 4, "テーブル更新") = vbYes Then
CurrentProject.Connection.Execute strSQL
DoCmd.TransferText acImportDelim, strInp, strTbl, strFle, True
MsgBox "テーブルデータを更新しました"
End If
End Sub
----------
Private Sub 参照_Click()
Dim strFileName As String
strFileName = GetFileName()
If Len(strFileName) > 0 Then
Me.filepath = strFileName
Else
MsgBox "取込対象ファイルを選択してください! "
End If
End Sub

以上のようになっています。
デバッグを実行すると「strFle」の値がEmptyになっているのでここだとは思うのですが、どうしたらよいかわかりません。
どなたかお知恵をお貸し願えませんでしょうか。
宜しくお願いします。

前任者がAccess2003により作成したデータベースがあります。
CSVデータを取り込む仕組みがあるのですが、下記のエラーが出て困っています。

実行時エラー '2522':
このアクションまたはメソッドを実行するには[File Name/ファイル名]引数が必要です。

どうやらVBAによるエラーだと判明しましたが、それ以上はよくわかりません。
以下のような構文になっています。

Option Compare Database
----------
Private Sub CSV取込_Click()
TextConv strFileName, "マスター定義", "T_マスター"
End ...続きを読む

Aベストアンサー

Private Sub CSV取込_Click()
  TextConv Me.filepath "マスター定義", "T_マスター"
End Sub
でしょうか?

> Option Compare Database
の次に
Option Explicit
を追加すると、このようなエラーは発見しやすくなります。

VBEの画面で
[ツール] - [オプション] - [編集]タブで
「変数の宣言を強制する」にチェックを入れると
新しく作成するモジュールでは
自動で「Option Explicit」が挿入されるようになります。

Qダブルクリック設定?

パソコンのマウスをクリックすると、いつも1回おしただけなのにダブルクリックになってしまいます。
デスクトップのアイコンも1回クリックしただけで開けるし・・ どうやったらもとのクリックに戻せるのでしょうか。

Aベストアンサー

「スタート」→「設定」→「コントロールパネル」→「フォルダオプション」→「全般」タブから「クリック方法」の所で「シングルクリックで選択、ダブルクリックで開く」にチェックを入れます
これで直ると思いますが・・・。

Q実行時エラー'424' オブジェクトが必要です???

いつもお世話になっております。
プロシージャに下記のように記入しましたところ、
表題の「実行時エラー'424' オブジェクトが必要です」と出てしまいます。小生独学の初心者です。よろしくご指南ください。

前略~
Dim sh1 As Worksheet
Set sh1 = Active.Worksheet
~後略

Aベストアンサー

[Active.Worksheet]とは書きません。

Set sh1 = ActiveSheet

Qエクセル マクロ ダブルクリックによる設定

エクセルのマクロについての質問です。
ある特定のセル(”H1:K1”かな?)をダブルクリックすると今日の日付が記入される様になり、また別のセルをダブルクリックするとユーザーフォームが立ち上がる様なマクロを組みたいと考えております。
詳しい方がおりましたら、是非お願いします。

Aベストアンサー

VBEで目的のシートのコードを表示し、次の式を入力します。
ユーザーフォームの表示については、適宜セル範囲を設定してください。

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Row = 1 And (Target.Column >= 8 And Target.Column <= 11) Then
Target.Value = Date
ElseIf Target.Row = 2 And Target.Column = 8 Then
UserForm1.Show
End If
End Sub

Q実行時エラー '3464': 抽出条件でデータ型が

フォームにフィルタをかけようとすると
実行時エラー '3464': 抽出条件でデータ型が一致しません。

になります。

Private Sub Form_Load()
Me.Form.Filter = "フィールド1 =200"
Me.Form.FilterOn = True
End Sub

コードはこれです。
フィールド1はテキスト型です。
何がダメなのでしょう?

Aベストアンサー

Me.Form.Filter = "フィールド1 =200"

Me.Form.Filter = "フィールド1 ='200'"
に変更してください。
フィールドのデータ型によって
テキスト型→ ' で括る
日付/時刻型→ # で括る
数値型 → 何も括らない。
と合わせる必要があります。


人気Q&Aランキング