プロフィール
さんの画像

60過ぎのおっちゃんです。手探りでブログを立ち上げました。至らない点が多々あると思いますがご容赦ください。

広告

posted by fanblog

2018年03月23日

Accessで宛て名印刷








マイクロソフトエクセルのまとめ記事はこちら


Microsoft Office ブログランキングへ

封筒印刷


この内容で封筒印刷等も実現できると思います。

よく使用する「長3封筒」「角2封筒」の大きさに合わせて、

配置を考えれば実現できそうです。

ここで少し高度な技を!

レポート上で数字を漢数字に変換してみましょう。

引用させてもらったサイト

こちら

下のような内容のコードを記載した標準モジュールを作成します。

Public Function NumToKanji(strNum As String) As String

'半角数字を漢字の数字に変換する

Dim strKanji As String

Dim strCharacter As String

Dim intPos As Integer

Dim iintLoop As Integer

Const cstrNum As String = "0123456789"

Const cstrKanjiNum As String = "0一二三四五六七八九"

'引数を1文字ずつ変換するループ

For iintLoop = 1 To Len(strNum)

'引数より1文字を取り出し

strCharacter = Mid$(strNum, iintLoop, 1)

'その1文字が半角数字か(cstrNumに含まれるか)チェック

intPos = InStr(1, cstrNum, strCharacter, vbBinaryCompare)

If intPos > 0 Then

'半角数字の場合は漢字に変換

strKanji = strKanji & Mid$(cstrKanjiNum, intPos, 1)

Else

'半角数字でなければそのまま

strKanji = strKanji & strCharacter

End If

Next iintLoop

'漢字の文字列を返り値に設定

NumToKanji = strKanji

End Function

そしてレポート内に「非連結」のテキストボックスを作成して、

コントロールソースに「=NumToKanji([住所1])」と記載します。

注意として、今使用している「住所1」のテキストボックスに

追記してはいけません。

エラーになります。(循環エラー)

必ず非連結の新しいテキストボックスを作成してください。

これをレポート上で表示すると下記のようになります。

住所録25.png

赤枠の部分です。

それからこのテキストボックスは縦書きに設定しています。

この方が自然ですね。

もう一つ紹介しておきましょう。

数字はそのままで「−」だけ縦書きにしています。

これも標準モジュールを追加します。

引用させてもらったサイト

こちら

コードは下記です。

Public Function AddressVConv(S) As String

Dim i As Long, P As Long, C As String


If IsNull(S) Then Exit Function

S = Replace(S, "-", "|")

AddressVConv = Space(Len(S) * 3)

P = 1

For i = 1 To Len(S) - 1

C = Mid$(S, i, 1)

If C & Mid$(S, i + 1, 1) Like "[0-9][0-9]" Then

Mid$(AddressVConv, P, 1) = C

P = P + 1

Else

Mid$(AddressVConv, P, 3) = C & vbCrLf

P = P + 3

End If

Next

Mid$(AddressVConv, P, 1) = Mid$(S, i, 1)

AddressVConv = RTrim$(AddressVConv)

End Function

新たな非連結のテキストボックスを作り、

コントロールソースに「=AddressVConv([住所1])」と記載します。

住所録26.png

この結果が上の赤枠です。

このテキストボックスは横書きのままです。

配置でセンターにしているだけです。

一文字ごとに見ていき「−」があれば「|」に変換し、

「−」でなければ改行を入れるという内容です。

先に紹介したコードは「半角数字」が見つかれば「漢数字」に

変換という内容でした。

今回は「−」だけ縦書きにするというものです。

どちらも捨てがたいものがあります。

お好みで使用されてはどうでしょうか。







この記事へのコメント
コメントを書く

お名前:

メールアドレス:


ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバックURL
https://fanblogs.jp/tb/7468691
※ブログオーナーが承認したトラックバックのみ表示されます。

この記事へのトラックバック
Build a Mobile Site
スマートフォン版を閲覧 | PC版を閲覧
Share by: