• 締切済み

Access_使用可能プロパティ

Accessのサブフォーム内のテキストボックスを表示用にしたく テキストボックスのプロパティ「使用可能」をいいえにしました。 しかしデータがないデキストボックスはカーソルを取得しないように なりますが、データのあるテキストボックスはカーソルを取得して しまいます。 他のフォームではデータの有無に関わらずちゃんとカーソルを 取得しないように出来ています。 これは何が原因かお分かりの方お願いしますm(__)m

みんなの回答

  • DexMachina
  • ベストアンサー率73% (1287/1744)
回答No.1

> データのあるテキストボックスはカーソルを取得してしまいます。 値の有無で使用可否が切り替わる・・・ということは、『条件付き書式』の設定が 原因として疑われると思います。 フォームをデザインビューで開いたら当該テキストボックスを選択し、メニューで 「書式(O)→条件付き書式(D)」を選択して、設定を確認してみてください。 (コントロールの使用可否の切り替えは、一番右端(「フォント/前景の色」の右隣)  の長方形(「有効」ボタン)で指定できます)

picopico_7
質問者

お礼

アドバイスどうもありがとうございました。 条件付書式の設定は特になのも設定されていませんでした。

関連するQ&A

  • TextBoxのhWndプロパティVBAでも使えませんか?

    環境 OS:Win2000ProSP4 Excel2000および2002 Excel2000で、テキストボックスのあるフォームを作成しました。 選択したファイルを読み込んでテキストボックスに表示する機能があり それに加えて、テキストボックス中をマウスでクリックした時、その場 所のカーソルの位置(そこの行数と行内で何カラム目か、の2つ)を取得し て同じフォーム上に表示させる機能をつけました(矢印ボタンでカーソ ルが移動しても、位置情報を更新するようにしています)。ただし、 ネットで調べたカーソル位置取得方法はVBAでなくてVBのものなので、 API(SendMessage)に渡すテキストボックスのhWndプロパティはなく、 困ってしまいました。窮余の一策として、普通のテキストボックスの 代わりに、リッチテキストコントロールを使用して、その中にある hWndプロパティを渡して、上の機能を実現していました。ところが、 Excelを2002にアップグレードしたら、リッチテキストコントロール が使えないことが判明しました(MSのサイトによると、セキュリティの ため、とのこと)。 Excel2002で、2000時代につくったフォームを開くと、リッチテキスト コントロールがすっぽり抜け落ちている状態です。こうなれば、普通の テキストボックスのhWndプロパティをAPIで取得できないか、というこ とを調べているところで困っています。あるいは、2002でも使える同じ ようなコントロールがあれば助かります。 長くなりましたが、ご存知の方、アドバイスをお願いします。

  • Accessのプロパティについて

    ExcelからAccessへデータをインポートしてテーブルを作り、フィールドの[データ型]を[テキスト型]から[数値型]へ変更しようとすると、保存時に「レコードが大きすぎる」と弾かれてしまいます。仕方がないのでフォーム上でテキストボックスのプロパティで書式を変更しようとすると、コンボボックスのリストが表示されないため変更できません。これはやはりレコードが大きすぎるためなのでしょうか?また、その解決法を教えていただきたいのですが…。あまりAccessは詳しい方ではないので分かりやすく御願いします。

  • Accessのサブフォームについて

    Accessのサブフォームのテキストボックスをクリックするとメインフォームのテキストボックスにサブフォームのテキストボックスの値を反映させるために以下のロジックを組み込んだ所エラーが発生してしまいました。 調べてみても分かりませんでしたので解決方法が分かる方は教えて下さい。 よろしくお願いします。 ロジック Form!メインフォーム!テキストボックス=サブフォームのテキストボックス エラー 「指定した式で参照されている’メインフォーム’フィールドが見つかりません」 「コントロールがフォーカスを取得していないときに、コントロールのプロパティまたはメソッドを参照することはできません」

  • 【Access2007】データシートからデータの追加ができない。

    環境  Windows Xp Pro sp3 Access 2007 Accessのフォームにサブフォームがあり、テキストボックスを配置し、 データシート形式で表示しています。 RecordSourceはクエリを使用しています。 このデータシートより新規データを追加したいのですが、新規追加行が表示されません。 他の、正常に動作しているフォームと比較してみましたが、これといった差異はありませんでした。 フォームの更新・追加プロパティは「はい」にしてあり、更新はできています。 何か盲点的な原因はあるのでしょうか? また、上記現象時の確認すべき点を教えてください。 ご教示よろしくお願いします。

  • Access:フォームプロパティ「ダーティー時」が使えない

    『F_入力用(単票フォーム)』で新規入力が行われた場合、明示的に保存操作をさせたく ダーティー時を使って保存ボタンを作成しました。 ちなみに、なんらかの入力が行われた時は非可視のテキストボックスに「1」が入るようにし そのテキストボックスに「1」が入っている時はレコードの移動は出来ず、 保存ボタンを押すことによって「1」が消えるという感じに作ってあります。 設計中にその『F_入力用』をダブルクリックで開き試してみたところきちんと稼動してましたが 実際の操作と同様に他のフォームから遷移してくるとなんらかの入力を行っても「1」が 入ってくれません。 いろいろ調べてみると他フォームから遷移されてくるときは、他フォームで入力された情報の一部が 『F_入力用』に表示のみされるようになっており、それが原因でダーティー時が稼動してくれない ようでした。 (他フォームで入力された情報が表示される『F_入力用』上のテキストボックスを削除してみると 他フォームから遷移されてきてもダーティー時はちゃんと稼動してくれました) 他フォームのリンク元テーブルと『F_入力用』のリンク元テーブルは別のものです。 いろいろ調べてみましたが解決方法がまったくわかりません。 ご存知方がいらっしゃいましたらよろしくお願い致します。

  • サブフォームのリクエリー

    accessにて開発を行ってるのですが・・・ まず、メインフォームとサブフォームがあり、メインフォームのテキストボックスに入力したデータにマッチしたデータのみをサブフォーム上に表示させるには・・・ ちなみに・・・ ・サブフォームにはクエリーデータを常時表示 ・メインフォームより入力があったらその条件でサブフォーム表示の更新 っていう感じです・・・よろしくお願いします。

  • Access2000 テキストボックスに文字を入力できない理由が判りません。

    お世話になります。 サブフォームの中のあるテキストボックスに、 カーソルは置けるのですが、文字を入力できなくて悩んでいます。 見当違いかも知れませんが、自分なりに「ここら辺は関わりがあるかな」 とプロパティ部分で思う個所を挙げてみます。 テキストボックスのプロパティ  ・「データ」タブの中   「使用可能・・・はい」「編集ロック・・・いいえ」    ・「その他」タブの中   「IME入力モード・・・コントロールなし」「IME変換モード・・・一般」「禁則処理・・・いいえ」 サブフォームのプロパティ  ・「使用可能・・・はい」「編集ロック・・・いいえ」 単にフォームだけの問題ではないのでしょうか。 簡単な事でしたら申し訳ないです。宜しくお願いします。

  • Accessで起動時にフォームが開かれるのですが・・・

    Accessで起動時にフォームが開かれるようになっていて、そこに設置してあるマクロボタンをクリックするとメインフォームが開くようになっています。 このマクロボタンをクリックしメインフォームを開いて、メインフォームに設置してあるテキストボックスに期間を入力してサブフォーム上にその期間内のみのデータが表示されるようにしてあるんですが、どういうわけか、そのテキストボックスにカーソルが移動しない為、入力できない状態になってしまいます。 デザインビューに切り替えた後、再度ビューを切り替えると、カーソルが移動できるようになるのですが、どのようにすれば、カーソルが移動するようになるのでしょうか?? どうぞご回答の程宜しくお願いいたします。

  • Access2010 帳票サブフォームで

    Access2010 SP1を使用しています。 帳票サブフォームを含むフォームを作成しています。 1.そのフォームを開いている時、VBAで実際のフォーカス(カーソルがあって直接入力できる位置)が メインフォームにあるかそれともサブフォームにあるかを判断する方法はありませんでしょうか? メインで入力中でもRequery時などで、サブフォーム内のコントロールでEnterイベントが起きてしまい、 本当はサブフォーム内でカーソルが当たって入力する時だけに実行したい処理が動いてしまうのです。 そこでサブのイベントの方にメインで入力中は実行せず、サブで入力している時のみ実行するよう IFで分岐を入れたいのですができますでしょうか? 2.フォームフッタを含む帳票サブフォームでレコードソースが0件の時、 そのフッタにあるテキストボックスへのEnter時にSelLengthやSelStart、Textプロパティが実行できません。 Enter時なのに「コントロールがフォーカスを取得していないときに、コントロールのプロパティまたはメソッドを参照することはできません」 と出てしまうのです。 0件でなければエラーが出ないのですがどうすれば出るようになるのでしょうか?

  • ACCESS メインFからサブFの値を参照

    サブフォームで集計した値をメインフォームで演算値として使用したいのですができません。 サブフォームのフォームヘッダに集計値を入れるテキストボックスを配置し、メインフォームにサブフォームの集計値を参照するテキストボックスを配置しています。 ほんとうはイベントの実行で直接サブフォームの集計値を使った演算を行いたいのですが出来ないのでメインフォームにテキストボックスを作成しました。 サブフォームの集計値は表示しますが、その値を演算値として使用できないのです。試しにMsgboxでメインフォームのテキストボックスの値を表示させると何も表示しません。 なぜメインフォームのテキストボックスにサブフォームの値は表示できるのにその値を使用できないのでしょうか? 具体的には次の通りです。 <サブフォームに配置したテキストボックス>  名前        :テキスト16  コントロールソース:SUM([枚数〕)  書式        :数値 <メインフォームに配置したテキストボックス>  名前        :テキスト130  コントロールソース:[Foms]![メインフォーム名]![サブフォーム名].Form!テキスト16  書式        :数値 <イベント>   MSGBOX テキスト130       ※何も表示されません!

専門家に質問してみよう