好きな和訳タイトルを教えてください

「F_メイン」というフォームがあります。
これからF_1・F_2、F_1からF_3というように開くようにしてあります。
そこで直接F_1・F_2・F_3を開けないようにすることはできますか?
データベースのWindow(テーブル・クエリーなどとかいてあるメインのところ)を小さくする、ということができるのはわかってますが、
これだと下からそこを大きくしたら開けてしまいますよね。
できればテーブルも直接開けない方がいいです。
よろしくお願いします。

A 回答 (4件)

メニューで [ツール]→[起動時の設定] を開き


「フォーム/ページの表示」に“F_メイン”を設定し、「データベースウィンドウの表示」のチェックをはずせば、おそらくご希望通りの動作になります。
    • good
    • 1
この回答へのお礼

回答ありがとうございます。

これだともし修正を行う場合に、無理になりますよね?
(復元できるなら復元方法教えてください。)

お礼日時:2003/07/31 17:04

手元にAccessがないので確認はできていません。



テーブルの件
テーブルのプロパティで隠し属性にしてしまう、と。

フォームの件
[F_1]は[F_メイン]の指示でしか開かない、と。
子分のフォームを開くのはどうやってるんでしょうか?
Docmd.OpenForm を使って開いていれば以下の方法をどうぞ。
[F_1]のLoadプロシージャだったかな。引数に "Cancel" があるやつ。(もしかしたらOpenプロシージャかも)
そこに

OnError Resume Next
If Me.OpenArgs <> "F_メイン" Then
 Cancel = True
End If

って書く。
んで、[F_メイン]から[F_1]を呼び出すプロシージャに

DoCmd.OpenForm FormName:="F_1", OpenArgs="F_メイン"

って書く。
こうすれば呼ばれる側の[F_1]はOpenArgsプロパティに何らかの文字が設定されている時にしか開かなくなる。
つまりフォームをダブルクリックして開こうとしてもOpenArgsプロパティの中身は空っぽだから開かない、と。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

私も最初はコードで制限させようと思いいろいろやったんですが、ダブルクリックでは開くことができてしまって挫折してしまいました。

今回は#2の方の方法でやろうと思いますが、今後何かあった時は使用してみたいと思います。

ありがとうございました。

お礼日時:2003/08/01 17:05

#1です。



mdbファイルは、キーボードの<Shift>を押しながら起動しますと「起動時の設定」で設定した内容をスキップして開くことができます。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

Shiftでできるんですね。
これ知らなくていつも元mdbとコピーmdbの両方作ってました。

ありがとうございました。

お礼日時:2003/08/01 17:07

なるほどそんな機能があれば便利だと思って試してみました。

フォーム画面で非表示にしたいフォームを右クリックしてプロパティを選択します。 隠しオブジェクトというチェックボックスがあるのでチェックを入れます。すると
見事に隠れます。もちろん実行時にはちゃんと表示されます。どうすれば非表示・表示を切り替えられるのか、ちょっと焦りましたが、ちゃんとツール-オブション-表示で隠しオブジェクトが設定できるようになっていました。
これは便利な機能ですね。
    • good
    • 0
この回答へのお礼

回答ありがとうございます!!!

こんなステキナ機能があるんですね。
これは今後も大いに活躍してくれそうです。

ありがとうございました。

お礼日時:2003/08/01 17:04

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

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


おすすめ情報

このQ&Aを見た人がよく見るQ&A