• ベストアンサー

accessのレポートのテキストボックス

accessのレポートのテキストボックスで文字数が多いと文字が入らず印刷時拡張を使ってもそのテキストボックスしか大きくならずアンバランスです,他のテキストボックスも一緒に大きくするか,文字を小さくしてテキストボックス内に入るようにするにはどうすればよいでしょうか?VBAを使ってもかまいませんので教えてください。

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

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

こんにちは。 どういう感じのレポートか分かりませんが、 テキストボックスの高さを少し高くして改行ができるようにしては、どうでしょうか? また、レポートの詳細のフォーマット時にテキストのフォント名、サイズは、変更できますよ。 例えば、そのテキストボックスの桁数を調べて、桁数が多ければ、フォントまたは、サイズを変更する。 ただ、これは、全テキストボックスをそうしたい場合は、記述が大変だし、 印刷するデータ件数が多い場合は、若干遅くなりますが...(^_^;) こんな感じです。 レポートの詳細のフォーマット時で、 If Len(Me![テキストボックス名])> xx then ←何桁以上だった時 Me![テキストボックス名].FontName = "フォント名1" ←小さいフォント Me![テキストボックス名].FontSize = xx ←小さく印刷する時のサイズ Else Me![テキストボックス名].FontName = "フォント名2" ←通常印刷するフォント Me![テキストボックス名].FontSize = xx ←通常の指定のサイズ End これで出来ます。 よい回答じゃないかもしれないですけど、本職じゃないのでご勘弁下さい。 では。 では。

satooo
質問者

お礼

前者のやり方は気がついていたのですが文章がうえのほうに偏ってしまってきれいではないのでやらなかったのです,せめて1行のときは真ん中に自動でやってくれればよかったのですが,後者のほうはもうばっちりです。なるほどこういう方法があったのですね,VBA初級者なので気がつきませんでした,どうもありがとうございます,今から試してみます。

satooo
質問者

補足

すみません。このVBAだと全部大きくなったり小さくなったりで,長い文章だけ小さい文字にできないのですがどうすればいいのでしょうか?

その他の回答 (3)

回答No.4

こんにちは。 >いろいろ数字を変えて試してみたんですが一番最初の文字だけしか適用されず >そのあとの文字数が多くても少なくても最初で判断した文字サイズが使われているみたいです。 >イベントのタイミングが問題なのかいろいろ試してみましたがだめでした。 多分、VBAを書くところの問題と思います。 まず、レポートをデザインモードで開きます。 レポートをデザインモードで開くと、「ページヘッダー」「詳細」「ページフッター」があると思います。 その、「詳細」の文字をクリックすると、そこが黒く反転します。 反転したら、今度はそこで右クリックをして、ポップアップメニューを出して、「イベントのビルド」をクリックします。 そうすると、下記のように表示されるはずです。 Private Sub 詳細_Format(Cancel As Integer, FormatCount As Integer) End Sub この間に、書けば大丈夫だと思います。 試してみて下さい。 では。

satooo
質問者

お礼

できました。どうもありがとうございました。

回答No.3

こんばんわ、No.1です。 >このVBAだと全部大きくなったり小さくなったりで, >長い文章だけ小さい文字にできないのですがどうすればいいのでしょうか? 回答の中で、(何桁→何文字) >If Len(Me![テキストボックス名])> xx then ←何文字以上だった時 がありますが、この xx(数字です)をもう少し大きくしてみればいいのでは? 長い文章というのは、何文字以上の時という時の何文字を、xx に書きます。 例えば、Me![テキストボックス名]が、15文字より大きい時、長い文章とするなら、 If Len(Me![テキストボックス名])> 15 then とすればよいです。 それで、15文字以下の文章は、Else ~ End If で設定したフォントで出力されます。 ちなみに、Else ~ End If の設定は、そのテキストボックスに設定したプロパティの フォント、サイズと同じものを書いて下さい。 これでどうでしょうか?

satooo
質問者

補足

いろいろ数字を変えて試してみたんですが一番最初の文字だけしか適用されずそのあとの文字数が多くても少なくても最初で判断した文字サイズが使われているみたいです。イベントのタイミングが問題なのかいろいろ試してみましたがだめでした。よろしくお願いします。

  • ryuu001
  • ベストアンサー率61% (46/75)
回答No.2

印刷時拡張を設定したレポートで横罫線をそろえる方法 マイクロソフトのサポートに載っていました。 テキストボックスの高さは変えられないので、 印刷時に、一番高さの高い テキストボックスに合わせて LINEを引きます。

参考URL:
http://support.microsoft.com/default.aspx?scid=kb;ja;404907

関連するQ&A