Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


1311 / 2272 ツリー ←次へ | 前へ→

【7773】同じ画面を表示データを変えて複数表示 迷える子羊 06/4/27(木) 15:59 発言[未読]
【7774】Re:同じ画面を表示データを変えて複数表示 hatena 06/4/28(金) 1:46 回答[未読]
【7775】Re:同じ画面を表示データを変えて複数表示 迷える子羊 06/4/28(金) 9:28 質問[未読]
【7776】Re:同じ画面を表示データを変えて複数表示 hatena 06/4/28(金) 9:40 回答[未読]
【7777】Re:同じ画面を表示データを変えて複数表示 迷える子羊 06/4/28(金) 9:50 お礼[未読]

【7773】同じ画面を表示データを変えて複数表示
発言  迷える子羊  - 06/4/27(木) 15:59 -

引用なし
パスワード
   通常、VBAでは DoCmdオブジェクトのOpenFormメソッドを使って
フォームを開きますが、
この方法だと、とある単票形式のフォームを使って
表示データが異なるものを2つフォームに同時に画面に表示する。
といったことが出来無くて困っています。
1個目のデータ指定後、OpenFormメソッドでとある単票形式のWindowを表示。
2個目のデータを指定して、OpenFormメソッドで
単票形式のWindowを表示すると、あらたにWindowが作られずに
表示済みのWindowのデータが2個目のデータに入れ替って
いるだけになってしまいます。
JAVAのような、新たにフォームのインスタンスを作成して、
その新たに作られたフォームに2個目のデータが表示出来るように
したいのですが、可能でしょうか?
ご教授の程、宜しくお願い致します

【7774】Re:同じ画面を表示データを変えて複数表示
回答  hatena  - 06/4/28(金) 1:46 -

引用なし
パスワード
   >JAVAのような、新たにフォームのインスタンスを作成して、
>その新たに作られたフォームに2個目のデータが表示出来るように
>したいのですが、可能でしょうか?

フォーム1 を二つ開き、一つ目は ID=1、2つ目には ID=2 のレコードを
表示する例

Option Compare Database
Option Explicit
Dim Fm(1) As New Form


Private Sub コマンド1_Click()

  Set Fm(0) = New Form_フォーム1
  Fm(0).Filter = "ID=1"
  Fm(0).FilterOn = True
  Fm(0).Visible = True

  Set Fm(1) = New Form_フォーム1
  Fm(1).Filter = "ID=2"
  Fm(1).FilterOn = True
  Fm(1).Visible = True


End Sub

【7775】Re:同じ画面を表示データを変えて複数表示
質問  迷える子羊  - 06/4/28(金) 9:28 -

引用なし
パスワード
   ▼hatena さん:
アドバイスありがとうございます。
早速下記のソースを参考にして実行してみたのですが
下記のようなエラーメッセージが表示されうまく動きませんでした。
「実行時エラー '7782':
 デザインビューで、このフォームまたはレポートの新しいインスタンスを
 作成することはできません。」

なぜか、デザインビューで起動されてしまっているようです。
良い解決策があると良いのですが・・・。

>Option Compare Database
>Option Explicit
>Dim Fm(1) As New Form
>
>
>Private Sub コマンド1_Click()
>
>  Set Fm(0) = New Form_フォーム1
>  Fm(0).Filter = "ID=1"
>  Fm(0).FilterOn = True
>  Fm(0).Visible = True
>
>  Set Fm(1) = New Form_フォーム1
>  Fm(1).Filter = "ID=2"
>  Fm(1).FilterOn = True
>  Fm(1).Visible = True
>
>
>End Sub

【7776】Re:同じ画面を表示データを変えて複数表示
回答  hatena  - 06/4/28(金) 9:40 -

引用なし
パスワード
   >下記のようなエラーメッセージが表示されうまく動きませんでした。
>「実行時エラー '7782':
> デザインビューで、このフォームまたはレポートの新しいインスタンスを
> 作成することはできません。」

単純にメッセージ通り、そのフォームをデザインビューで
開いたまま、コードを実行しているということはないです
よね。

【7777】Re:同じ画面を表示データを変えて複数表示
お礼  迷える子羊  - 06/4/28(金) 9:50 -

引用なし
パスワード
   ▼hatena さん:
すみませぇん。。ご指摘の通り対象フォームをデザインビューで開いたままでした。
デザインビューを閉じた後、ちゃんと動作できるのを確認しました。
細かいご指摘までして頂き、ありがとうございました。
がんばります。
>>下記のようなエラーメッセージが表示されうまく動きませんでした。
>>「実行時エラー '7782':
>> デザインビューで、このフォームまたはレポートの新しいインスタンスを
>> 作成することはできません。」
>
>単純にメッセージ通り、そのフォームをデザインビューで
>開いたまま、コードを実行しているということはないです
>よね。

1311 / 2272 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
1078228
(SS)C-BOARD v3.8 is Free