• ベストアンサー

ACCESSのレポートについて

質問です。 くどいようですが、切実なのでもう一度・・・ アクセスのレポートを開いたときに キーボードの操作を「英数文字入力」に切り替えるには どうしたらよいのでしょうか?

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

  • ベストアンサー
回答No.6

>フォームを経由でということなら、テキストボックスで、お望みのIMEの設定のもを作成しておき、 >そこに、フォーカスを移してからレポートを開けば、APIを使わなくてもできますね。 なるほどその手はありますね。 純粋にプログラムでIMEを制御する方法しか考えていなかったものですから(^^; でもそんな事をするぐらいなら、やっぱりフォーム上に IME使用不可のテキストボックスでも用意しておき そこに条件を入力して、クエリはそのテキストボックスを 参照する形にした方が良さそうですね。

hamu-ha
質問者

お礼

ありがとうございます。 プログラムは私には無理なのでフォームを利用する方向で 考え直します。

その他の回答 (5)

  • Gin_F
  • ベストアンサー率63% (286/453)
回答No.5

> APIを使ったプログラムを組み込まなければ実現できそうにありません。 フォームを経由でということなら、テキストボックスで、お望みのIMEの設定のもを作成しておき、 そこに、フォーカスを移してからレポートを開けば、APIを使わなくてもできますね。

hamu-ha
質問者

補足

ありがとうございます。 どうにかフォームを参照できるようにもっていくのがよさそうですね。 考え直します。

回答No.4

ACCESS自体のIMEのモードを切り替える必要がありますので APIを使ったプログラムを組み込まなければ実現できそうにありません。 フォーム上の「印刷」ボタンを押した時にレポートを開くならば フォームモジュールで Option Compare Database Option Explicit Private Declare Function GetForegroundWindow Lib "user32.dll" () As Long Private Declare Function ImmGetContext Lib "imm32.dll" ( _ ByVal hwnd As Long _ ) As Long Private Declare Function ImmReleaseContext Lib "imm32.dll" ( _ ByVal hwnd As Long, _ ByVal himc As Long _ ) As Long Private Declare Function ImmSetOpenStatus Lib "imm32.dll" ( _ ByVal himc As Long, _ ByVal fOpen As Long _ ) As Long Private Sub [ボタン名]_Click() Dim himc As Long himc = ImmGetContext(GetForegroundWindow) Call ImmSetOpenStatus(himc, 0) DoCmd.OpenReport "レポート名" Call ImmReleaseContext(GetForegroundWindow, himc) End Sub とでもしておけば、レポートを開く前にIMEをオフにしておけそうです。 データベースウィンドウから単純に開くだけだと レポートを開く前に処理を組み込んでおく事はできないため #3の方の回答どおりあきらめて頂くしかなさそうです。

  • Gin_F
  • ベストアンサー率63% (286/453)
回答No.3

一般機能ではできないですね。 レポートをどのように開いているのかにもよりますが、データベースウィンドウから開いているのであれば、 あきらめてください。 フォームのコントロールを参照させるように作り変えればいいと思います。

  • tihit2
  • ベストアンサー率17% (4/23)
回答No.2

 クエリーでパラメーター入力を設定しても、文字種を指定するのは、あらかじめ元になっているテーブルのデザイン画面で設定します。例えば、電話番号のようにゼロで始まる数字文字は半角英数で、文字はテキストで文字数は20文字にしておけば、クエリー、フォームの入力は、指定した文字種が反映されます。  それ以外の文字種でも入力は出来ますが、数値を指定してあるフィールドに関係ない文字を入力しても入力出来ない等のERRが起きます。  テーブルで入力条件を入れるのが基本です。  

hamu-ha
質問者

補足

クエリーで求めた値に対してパラメーター入力をしております。 この場合はどのようにすればよいのでしょう?

回答No.1

具体的にどういった結果を望まれているかが良く分かりません。 「レポートを開いたとき」とありますが、ACCESSで 単純にレポートを開いた場合はレポートの内容が印刷されるだけです。 「レポートをデザインビューで開いた時」という事でしょうか? その場合は単にデザインを開く前の入力モードが 保持されているだけで、切り替えの必要性はあまりないように思われます。 レポートではなくフォームやテーブルを開いた場合の テキストボックスや各フィールド等への入力の事ならば テーブル、フォームをデザインビューで開き 各コントロール、フィールドのプロパティで 「IME入力モード」を設定すれば入力モードの制御は可能です。

hamu-ha
質問者

補足

クエリで、データの抽出条件を入れる設定になっています。 そのため、レポートを開いたときにパラメータで条件を聞いてきます。 そのときに半角英数のみの入力にしたいため、入力モードを切り替えたいと考えております。 よろしくお願いします。

関連するQ&A

  • アクセス2000のレポートについて

    アクセス2000でデータ-ベースを作成しています。 名称と住所を英語で入力する必要があるデータがあり、このデータをレポートで出力しようとすると、下記のように文字の途中で改行してしまうのですが、どうにかならないでしょうか?全て短いデータだけなら、改行しなくてもすむように、レポートで充分に広い幅を採ればいいのですが、長いデータもあり、どうしてもレポートで改行する必要があるのですが.... レコード  microsoft access2000 レポート micrsoft acce ss2000 できれば、下記のようにレポートで出力したいのですが: レコード microsoft access2000 レポート microsoft access2000

  • ACCESS のレポートの色つけ

    アクセスのレポートの機能で エクセルの条件付書式のような「ある条件で文字の色が変わる」というような機能はありますか? あったらどのように操作したらよいかお教えください

  • Accessでのレポート表示について

    Accessの初心者です。レポートを作成していてわからないので教えてください。 テーブルで入力したものを引っ張ってきてレポートで表示したいのですがその表示の時に括弧をつけて(****)と表示する事はできますか?  テーブルでは **** と入力して  レポートでは(****)と表示したい レポートで****の前後にテキストボックスで()を書いてもいいのですがこれでは1つ困る事があります。 それは文字数がその都度違うということです。テキストボックスでやると(**  )となったり(****)****となったりします。希望は文字数が多くても少なくても最初と最後に括弧をつけたいのです。 (*) (****) (***********) ↑こんなかんじで。 いい方法はないでしょうか?よろしくお願いします。

  • アクセス2010 レポートについて

    アクセス2010 レポートについて質問が2つあります。 質問1 レポートビューと印刷した時で、改行の位置等が微妙にずれますが、ずらさない方法は有るのですか。? 質問2 レポートのラベル等の入力が2行になった時、エクセルのセル内の改行のように特定の位置で改行を指定することはできるのですか? ご回答よろしくお願いいたします。

  • Access2000でのレポート印刷

    Access2000を使用しています。 データをテーブルに入力してレポート印刷をしたいのですが、テーブルで抽出したデータだけを印刷するにはどうしたらいいのでしょうか? 今、レポート印刷できるのはそのレポートを作成した時点でのテーブル状況が反映されたもので、その後テーブルの操作をしても、それがその都度、レポートに反映されません。よろしくお願いします。

  • ACCESS レポートに関して

     ウィンドウズ98、ACCESS2000です。  レポートを作っているのですが、該当するレコードが未入力の場合、 ¥0とレポートには出力させたいのです。レポートのプロパティ設定 で規定値を0としても、レポート上空で出力されてしまうのですが。  宜しくお願いします。

  • ACCESSのレポートについて

    ACCESSでフォームから印刷ボタンを押すとレポートの印刷プレビューが表示されるという簡単なアプリケーションを作成したんですが、レポートの余白・向きを保存→アクセスを終了→アクセスを起動→レポートを表示→レポートを閉じる→レポートを表示という操作をすると、ページ設定で設定し保存した余白・ページの向きが元に戻ってしまいます。どうすればちゃんと保存できるのでしょうか? ちなみにDoCmd.OpenReport "hoge", acViewPreviewでレポートを表示させてます。

  • ACCESSのレポートで

    Accessのレポートで宅急便の送り状を印刷しているのですが、 送り先は住所録からですが、送るものが毎回違う為、 送り状の品名欄に印字したい文字をその都度、印刷時に入力 することは出来ませんか?(品名のデータは残らくて良いです。) 宜しくお願い致します。

  • ACCESSで表示されているフォームだけをレポートに出したい

    アクセスで、入力したフォーム内容をすぐにレポートで印刷できるよう、コマンドボタン作成ウィザードで、レポートの操作→レポートのプレビューを行ったのですが、IDが1のものが表示されてしまいます。。 これを、表示されているフォームIDのものをプレビューさせることはできますでしょうか? 色々調べてみたのですが、分からなかったので。。 宜しくお願いします!

  • ACCESSのレポートで

    Accessのレポート印刷でExcelで作成された既定の書式の用紙に印刷したくて、その用紙を画像として読み取りレポートの背景に埋め込んでやってみたのですが細かい文字がぼけてしまいます。 何かうまい方法はないでしょうか?

専門家に質問してみよう