メールマガジン【アクセスで作るシリーズ】


バックナンバー 【住所録ソフト編】 Vol.36
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□

    ACCESSで作るシリーズ  【住所録ソフト編】

    発 行 : Yoshihisa Fukuda          2002.11.09 Vol.36

■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□
--------------------------------------
今回からは、今までのプログラムの解説を行います。

特に、アクセス2000をご使用の方は、ウィザードで作成されるフィールド等が
異なるため、混乱されている方も多く見受けられます。

解説では、今まで同様のプログラムの解説に加え、アクセス97と2000の差異
にも触れて、解説していきます。
______________________________________
 □ 宛名印刷レポート 詳細セクションの開く時のイベントプロシージャ

Private Sub Report_Open(Cancel As Integer)
AddrFSize = Me.Address_sub1.FontSize
End Sub

レポートを開く時に、最初に AddrFSize 変数に、デザイン時の住所表示用テキスト
ボックスのフォントサイズを退避します。
AddrFSize 変数は、モジュールウィンドウの最初で Dim AddrFSize As Integer と
して数値型変数として宣言されています。
______________________________________
 □ 宛名印刷レポート 詳細セクションのフォーマット時のイベントプロシージャ

Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
Dim StrAddr As String

Me.Address_sub1.FontSize = AddrFSize
Me.Address_sub2.FontSize = AddrFSize

If Me.PrintAddr = 1 Then
StrAddr = StrConv(Me.Address, vbWide)
Me.tbound3.Visible = False
Me.tbound4.Visible = False
Else
StrAddr = StrConv(Me.OfficeAddress, vbWide)
Me.tbound3.Visible = True
Me.tbound4.Visible = True
End If

StrAddr = AddrConv(StrAddr)

SetAddress StrAddr

Me.tbound5 = Me.tbound5_sub & " " & Me.tbound6
Call SubNameDisp

StrAddr = StrConv(Me.tbound8, vbWide)
Me.SendAddr_sub = AddrConv(StrAddr)
End Sub

【解説】

1行目の Dim StrAddr As String は変数の宣言です。
StrAddr と言う変数を文字列型で定義しています。

3、4行目で住所表示用の2つのテキストボックス(Address_sub1、Address_sub2)
のフォントサイズを設定しています。
設定する値は AddrFSize 変数の値で、これはレポートの[開く時]に最初に退避して
おいた値です。

6行目の If Me.PrintAddr = 1 Then は、宛先が自宅か会社かを判別します。

Then の中は、自宅の場合です。

 7行目の StrAddr = StrConv(Me.Address, vbWide) で StrAddr 変数に自宅住所
 を設定しています。
 その際、StrConv 関数を用いて半角文字を全角文字に変換しています。

 8行目の Me.tbound3.Visible = False は、会社名のテキストボックスの[可視]
 プロパティの値をFalseにして非表示にしています。

 9行目の Me.tbound4.Visible = False は、部署名のテキストボックスの[可視]
 プロパティの値をFalseにして非表示にしています。

Else の中は、会社の場合です。

 11行目の StrAddr = StrConv(Me.OfficeAddress, vbWide) で StrAddr 変数に
 会社住所を設定しています。
 ここでも、自宅住所と同様に StrConv 関数を用いて半角文字を全角文字に変換
 しています。

 12行目の Me.tbound3.Visible = True は、会社名のテキストボックスの[可視]
 プロパティの値をTrueにして表示しています。

 13行目の Me.tbound4.Visible = True は、部署名のテキストボックスの[可視]
 プロパティの値をTrueにして表示しています。

16行目の StrAddr = AddrConv(StrAddr) は、StrAddr 変数(自宅または会社)の
住所を AddrConv 関数を用いて、数字を漢数字に変換しています。

18行目の SetAddress StrAddr は、SetAddress 関数で、StrAddr変数の住所を
テキストボックスに設定しています。
この SetAddress 関数の中で、住所の2行分割や、フォントサイズ調整などを行って
います。

20行目の Me.tbound5 = Me.tbound5_sub & " " & Me.tbound6 は宛名のテキスト
ボックスに氏名(tbound5_sub)と敬称(tbound6)を連結して設定しています。

21行目の Call SubNameDisp で、連名の設定関数(SubNameDisp)を呼び出して
います。

23行目の StrAddr = StrConv(Me.tbound8, vbWide) は、差出人の住所(tbound8)
を半角文字を全角文字に変換して StrAddr 変数に代入しています。

24行目の Me.SendAddr_sub = AddrConv(StrAddr) でStrAddr 変数(差出人住所)の
を AddrConv 関数を用いて、数字を漢数字に変換し、差出人住所テキストボックス
(SendAddr_sub)に代入しています。


※ アクセス2000をご使用の方は、以下のフィールド名を参考にして下さい。

  Me.Address_sub1 は Me![_Address_sub1] です。
  Me.Address_sub2 は Me![_Address_sub2] です。

  アクセス2000のウィザードは住所が3行になっていますが、メールマガジン
  では2行しか使いません。

  Me.Address は Me![_Address] です。

  Me.tbound3 は Me![_Company] です。
  Me.tbound4 は Me![_Section] です。

  Me.tbound5_sub は Me![_Name] です。
 (tbound5_subは、元々tbound5をtbound5_subに名前を変えました。
  tbound5は追加したテキストボックスです。
  詳しくはVol.34の □ 宛名の敬称の付け方を変更する。 を参照)

  Me.tbound6 は Me![_Position] です。

  Me.SendAddr_sub は Me![_MyAddress] です。
______________________________________
 □ お知らせ。(重要)

 ☆ コンピュータウィルスに注意して下さい。

   メールマガジンでも、何度かお知らせしましたが、ウィルスメールが多数
   届いております。

   必ず、ウィルスチェックソフトを導入するなり、何らかの対処をして頂く様
   お願いいたします。

   最近多いウィルスは W32/Bugbear W32/Frethem W32/Badtrans です。

   コンピュータウィルスに関する詳しい情報は、IPAセキュリティセンター
   http://www.ipa.go.jp/security/index.html
   をご覧ください。

   また、ウイルスファイル削除に関する「デマメール」も流れています。
   正確な情報を確認した上で、対処するようにしましょう。

   「デマメール」に関する情報は
   http://www.ipa.go.jp/security/topics/alert140515.html
   をご覧ください。
______________________________________
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□

◇ ACCESSで作るシリーズ 【住所録ソフト編】
◇ 発 行 元  :Yoshihisa Fukuda(福田 義久)
◇ ご意見・ご要望
  ご質問等   :fukud@nifty.com

◇ このメールマガジンは、インターネットの本屋さん『まぐまぐ』を利用して発行
  しています。(まぐまぐID:0000077071)
◇ バックナンバー:http://www.fsc-net.com
◇ 登録・解除  :http://www.fsc-net.com

 Copyright(C) 2001-2002 Yoshihisa Fukuda All rights reserved.

◇転載について
 このメールマガジンの無断転載などは、一切禁止です。
 転載をご希望の方は、事前にメールで連絡をください。
◇免責
 このメールマガジン及びホームページの内容による、いかなる損害、障害などに
 関して発行者は一切の責任を負いません。
 掲載広告についても同様です。
______________________________________
■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□