最新閲覧日:

よく住所録を、レポートでプリンタに出力するのですが、人の名前や住所の長さが毎回違う為、調整に凄い時間がかかります。

A4用紙にきっちりと収めないといけないので、収まりきらないときは、名前のフリガナを少し省いたりすることもあります。

今はLen関数を使って文字の長さをある程度計って、おおまかに調整しているのですが、半角文字などが入ってくると、正確な長さが出なかったりします。

Accessにある機能を使って、レポートで出力するさいの、フィールドの幅を自動調整(フィールドに格納されている最大文字数が入る幅に調整)はできるのでしょうか?できないのでしたら、他に良い方法などございましたら、アドバイスして下さいませ!

宜しくお願いします。

このQ&Aに関連する人気のQ&A

A 回答 (3件)

クエリーで使用するのでしたら vbFromUnicode を 128 とすればいいです。



LenB(StrConv(文字列, 128))
    • good
    • 0
この回答へのお礼

LenBだと、期待どおりの
結果が得られなくて、???だったのですが
これで半角文字を識別できます
ありがとうございました♪

お礼日時:2001/04/23 10:59

Len関数は文字数が返るので全角・半角の判断では使えません。


LenB(StrConv(文字列, vbFromUnicode))
とすればバイト数が算出できます。半角は 1、全角は 2として文字列のバイト数が
求められます。
フォントやフォントサイズによって微妙に調整が必要かと思いますが、半角文字の
幅さえわかれば、このバイト数を乗じて幅を変えることができるかもしれません。

直接の回答じゃないですが、参考になれば幸いです。

この回答への補足

半角全角を区別してバイト数を出す方法が便利そうなんで、ぜひ使えるようになりたいんですが、上の

LenB(StrConv(文字列, vbFromUnicode))

をクエリで使用すると vbFromUnicode が
フィールド名として認識されてしまうのですが・・・。

補足日時:2001/04/19 14:47
    • good
    • 0

データの量に応じて、フィールドの横幅を自動調整することはできませんが、


縦幅なら調整できます。

イメージとしては、次のような感じです。

  データが少ない場合
  ┌───────┐
  │ああああああ │
  └───────┘

  データが多い場合
  ┌───────┐
  │あああああああ│
  │あああああああ│
  │あああああああ│
  │あああ    │
  └───────┘

上記のようなパターンでもよろしければ、
次の操作で、レポートのデザインビューを使い
プロパティの設定を行ってください。

1)レポートをデザインビューで表示
2)自動調整したいコントロールを選択
3)プロパティシートを表示
4)[書式]タブ内の[印刷時拡張]を[はい]に設定
5)プロパティシートが表示されたまま、
  自動調整したいコントロールのあるセクションを選択
    プロパティシートのタイトルバーが
    「セクション:○○」と表示されます
6)[書式]タブ内の[印刷時拡張]を[はい]に設定

以上です。
これで、データ量が多くなったときは、
縦にコントロールが伸びるようになります。

お役に立てばよいですが。
    • good
    • 0
この回答へのお礼

文字がはみ出るレコードを探すのに使ってます
作業が少し楽になりました、ありがとうございます。

お礼日時:2001/04/19 14:54

このQ&Aに関連する最新のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード


このQ&Aを見た人がよく見るQ&A

このカテゴリの人気Q&Aランキング

おすすめ情報

カテゴリ