Access (一般機能)

Accessの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Home : Access 2016)
レポートにテキストボックスを配置
投稿日時: 20/07/03 15:52:30
投稿者: Cyber033

レポートに非連結のテキストボックスを配置してテーブル、クエリに関係ない
テキストを入力するにはどうしたらよいのでしょうか。
 
レポートをデザインビューで開きそこにデザインのコントロールのテキストボックスを
クリックし、適当な位置に配置します。レイアウトビューに戻りそのテキストボックス
にテキストを打ち込んでみると打ち込んでいる際中はテキストの値が表示されているが、
打ち込みが完了すると消えてしまいます。テキストは半角英数のテキストと日付です。
日付は今日の日付はコントロールソースに "=date()"と入力すると今日の日付が表示
されますが、ある特定の日付を入力したいのですが。

回答
投稿日時: 20/07/03 21:52:06
投稿者: よろずや

="2020/7/3"
ってな感じで。

回答
投稿日時: 20/07/04 18:06:46
投稿者: らっぱ90

テキストボックスのプロパティのコントロールソースに=date()とし、
書式を日付(L)とすると本日の日付が表示されます。しかし、本日の
日付ではなく、特定の日付入力がしたい。
このテキストボックスはレポートヘッダーに配置しています。
="2020/7/3"と入力しようとしましたが、表示されません。

回答
投稿日時: 20/07/04 23:39:18
投稿者: よろずや

らっぱ90 さんの引用:
="2020/7/3"と入力しようとしましたが、表示されません。
そう言われても、こっちではちゃんと表示されてますねぇ。

回答
投稿日時: 20/07/05 19:45:24
投稿者: らっぱ90

ごめんなさい。
もう一度デザインビューにしてテキストボックスのコントロールソースに
="2020/7/3"と入力してレポートビューにもどしたら2020/7/3と表示されました。
ただ、このAccessファイルの使用は私も含め初心者でもあり、ファイル共有したい
ので、デザインビューからの入力は一般的ではないでしょう。レポートをレポート
ビューで開いたあとにテキストボックスに日付を入力したい。

回答
投稿日時: 20/07/05 20:58:57
投稿者: hatena
投稿者のウェブサイトに移動

らっぱ90 さんの引用:
ただ、このAccessファイルの使用は私も含め初心者でもあり、ファイル共有したい
ので、デザインビューからの入力は一般的ではないでしょう。レポートをレポート
ビューで開いたあとにテキストボックスに日付を入力したい。

 
一般機能では無理でしょうね。
レポートは入力用のインタフェースではなく、印刷出力用のものですので。
 
入力するならフォームで入力して、レポートの方ではそのフォームのテキストボックスを参照するというようにするのが一般的です。
 
レポートのテキストボックスのコントロールソース
=Forms!入力フォーム!テキストボックス名

どうしてもレポートビューで入力したいということなら、VBAを使えば可能ではあります。
 
レポート上のテキストボックスのフォーカス取得時とフォーカス喪失時のイベントプロシージャを下記のように記述します。
 
Private Sub テキスト0_Enter()
    Dim buf
    buf = Me.テキスト0.Value
    Me.テキスト0.ControlSource = ""
    Me.テキスト0.Value = buf
End Sub

Private Sub テキスト0_Exit(Cancel As Integer)
    Me.テキスト0.ControlSource = "='" & Me.テキスト0.Text & "'"
End Sub

 

投稿日時: 20/07/14 17:29:36
投稿者: Cyber033

やっとできそうです。
ありがとうございました。