Access (一般機能)

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

 
(Windows 7 Professional : Access 2010)
レポートの会社名または氏名の敬称を自動的に付けたい
投稿日時: 18/08/13 23:48:52
投稿者: FANTA66

いつもいろいろと参考にさせていただいております。
質問は初めてです。よろしくお願いいたします。
 
早速ですが、
現在、Access2010で封筒出力を検討しています。
 
以下のように自動的に敬称が付加できるようレポートを作成しています。
 
☆住所録は個人と法人と混在しているため、宛先によって敬称を自動で
 付加するようにしたいと考えてます。
☆敬称の事例は・・・
  @ 会社名 + 御中
  A 会社名 + 部署 + 御中
  B 会社名 + 部署 + 氏名 + 様
  C 氏名 + 様
 
☆レポート内にはテキストボックスが三つあります。
 テキストボックスでは以下のデータを表示しています。
  a) テキストボックス1 には 会社名
  b) テキストボックス2 には 部署
  c) テキストボックス3 には 氏名
 
★現在、レポート内の各テキストボックスに書き込みした内容は以下の通りです。
  a) [会社名] & IIf(Len([会社名] & [部署] & [氏名] & ""),""," 御中")
  b) [部署] & IIf(Len([部署] & [氏名] & "")," 御中","")
  c) [氏名] & IIf(Len([氏名] & "")," 様","")
 
結果、c)しかうまくゆきません。
a)はうまく表現できず、b) は部署データがないと" 御中"だけが表示されてきます。
なんとなく、上手く行きそうで行かないような現状です。
 
テキストボックスの使い分けにより、単一のレポートで@からBのように表現をするためには
どのようにしたら良いか教えてください。
住所録を分けてしまえば容易に完成可能だと思うのですが、
登録人数が多数のため出来ることでしたら、お話したような事の実現を希望する次第です。
 
どうぞよろしくご指導をお願い申し上げます。 :cry:

回答
投稿日時: 18/08/14 13:11:00
投稿者: hatena
投稿者のウェブサイトに移動

下記でどうでしょう。
 
a)
=[会社名] & IIf(Nz([会社名],"")<>"" AND Nz([部署] & [氏名],"")=""," 御中","")
 
b)
=[部署] & IIf(Nz([部署],"")<>"" AND Nz([氏名],"")=""," 御中","")
 
c)
=[氏名] & IIf(Nz([氏名],"")<>""," 様","")

投稿日時: 18/08/14 22:35:08
投稿者: FANTA66

hatena 様
 
誠にありがとうございました!
希望通りにレポートで表記する事ができました!!
本当に助かりました。
 
FANTA66