- ベストアンサー
アクセスのレポート機能
アクセス2000を利用しています。 10cm四方のプライスカード(横書き)を作りたいのですが、商品名.金額等その他を表示します。 商品名を上段横10cm×縦3cmに表示したいのです。 その下には金額をいれます。 テーブルには商品テーブルがあります。 レポートで作成する場合、商品名のテキストボックスの枠内で文字数によって、フォントが自動的に変わる(少なければ大きく、多ければ小さくなる)機能がないでしょうか?(筆まめにあるような) プロパティで印刷時拡張を「はい」にすると文字数が多いときは中途半端なところで改行されてしまいます できれば、文字数に関係なく1行におさめたいのでが・・ プロパティ-文字を標準にすると右端が収まらないし プロパティ-印刷時拡張にすると、 商品名の文字数が2文字から10文字と様々なので文字数が多くなると2段になります。それも中途半端なところで改行されます。 何か良い方法はないでしょうか? やはりワードでないとダメですか? 現在ワードを利用していますが、ある商品だけを印刷しようとすると並び替えもできないので探す手間がかかります。なにかと不便です。 アクセスならクエリで抽出したり、並び替えたりできるので早いかナと思っています。 アクセス初心者ですので、わかりやすく教えてください。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
詳細をクリックしてプロパティを開くと、開くのイベントがあると思います。 イベントの中でVBAに最大文字数を超えたらフォントサイズを小さくするプログラムを書いてください。 構文に対する質問はヘルプを見た方が楽だと思いますので、迷わずF1を押してください。 Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer) Dim Nagasa if len([xxxxx])>15 then xxxx.fontsize = 7 else xxxx.fontsize = 9 end if End Sub
その他の回答 (2)
- takibo
- ベストアンサー率57% (116/200)
akuamariさんの本意とは異なるかもしれませんが KOKUYOがフリーで配布しているラベル印刷ソフト「合わせ名人2(簡易版)」である程度希望の結果を得ることは出来ます。 アクセス・エクセル・テキストファイルなどからの差込設定も簡単で、決められた枠内での文字サイズ調整も可能です。 ラベル作成画面にmm単位の目盛りもあり、サイズ設定も簡単です。 ただし、KOKUYOでラベルとして販売している用紙が基本テンプレートとなりますのでラベルサイズの設定は出来ません。 近いサイズで KJ-A10(105mm×148.5mm)、LBP-7166(99.06mm×93.13mm)の2種類ようです。 10cm四方というサイズにとらわれなくて良いのであれば、データベースをアクセスで作成・管理して、ラベル作成はこういったソフトを使われてはいかがでしょうか。 (私はKOKUYOとは無関係です)
お礼
早速のご回答ありがとうございます。 参考にさせていただきます。
- imogasi
- ベストアンサー率27% (4737/17069)
エクセルのセルにはShrinkToFitがあって Sub test01() Range("a1").ShrinkToFit = True End Sub のように可能です。Accessを調べたのですが、TextBoxのプロパティに無いようなので、VBAで#1のような2段階程度の自作か、それ以上に幅とフォントを計算して縮小をしなければならないでしょう。 http://www.seagullclub.net/bbs2/step.cgi?mode=past_view&pastlog=10 の印刷時拡張にも不可能という答えが出ています。 (印刷時拡張=CanGrow,縮小=CanShrink) http://www.microsoft.com/JAPAN/developer/library/vbaac10/acproCanGrow.htm [垂直方向に調節される」ようです。
お礼
早速のご回答ありがとうございます。 ホームページも参考になりました。 色々勉強になります。
補足
早速、回答ありがとうございます。 ”詳細をクリックして”の詳細とはデザイン-セクション:詳細のプロパティですか? イベントタブには開くがないのですが・・・・ どこにプログラムを書くのかもわからない状況です。 もう少し詳しく教えていただけますか? お手数掛けます。