戸籍,住民票,登記事項証明書その他の公的書類に記載された氏名をExcelで再現しようとすると,画面上は同じ漢字に見えても,細部の字形が異なることがある。
本記事では,「藤」の右上部分が通常の形ではなく「ハ」になっている異体字を,Excelのセルに文字データとして格納し,対応フォントで表示する方法を説明する。
第1 結論
1 「藤」の直後に異体字セレクタを付ける
今回の字形は,通常の「藤」を別の漢字へ置き換えるのではなく,次の二つのUnicodeコードポイントを順番に並べて表す。
U+85E4 U+E0101
藤 VARIATION SELECTOR-18実際の文字列は「藤󠄁」である。ただし,このページを表示している端末又はフォントが異体字に対応していない場合は,普通の「藤」に見える。
UnicodeのIdeographic Variation Databaseでは,「U+85E4 U+E0101」がAdobe-Japan1コレクションのCID+13957として登録されている。
異体字セレクタは,単独で見える記号を追加するものではなく,直前の漢字について使用する字形を指定するものである。
2 対応フォントを指定する
文字列に異体字セレクタが含まれていても,使用中のフォントがその組合せの字形を持っていなければ,通常の「藤」が表示される。
今回使用したWindows環境では,游ゴシック及び游明朝が「U+85E4 U+E0101」の別字形を持つことをフォント内部のcmap format 14で確認できたため,Excelの対象セルには游ゴシックを指定した。
第2 右上が「ハ」の「藤」はどのような文字か
1 文字と字形を区別する
Unicodeでは,同じ文字として扱われる漢字に複数の字形がある場合がある。
異体字セレクタは,基底となる漢字の直後に付けることにより,登録された特定の字形を指定するための仕組みである。
今回の処理では,基底文字はあくまで「藤」(U+85E4)のままである。
ただし,異体字セレクタを含む文字列を通常の「藤」と同一に扱うかどうかは,検索,並べ替え又はデータ交換を行うアプリケーションに依存する。字形を正確に表示できるかどうかは,アプリケーションとフォントの双方に依存する。
2 参照した字形
今回の対象字形は,次のGlyphWikiページに掲載された「u85e4-itaiji-001」と照合した。
GlyphWiki「u85e4-itaiji-001」
https://glyphwiki.org/wiki/u85e4-itaiji-001
GlyphWikiの画像は字形の目視確認に利用し,文字列として格納するコードポイントはUnicode Ideographic Variation Databaseで確認した。
第3 Excelで最も簡単に入力する方法
1 UNICHAR関数を使う
Excelで新しいセルへ入力するだけであれば,次の式が分かりやすい。
="加藤"&UNICHAR(917761)&"太郎"917761はU+E0101を10進数で表した値である。
この式は,「加藤」の「藤」の直後に異体字セレクタを置き,その後ろに「太郎」を続ける。
式を入力した後,セルのフォントを「游ゴシック」又は実際に当該字形を持つ別のフォントへ変更する。
計算式ではなく固定した氏名として保存する場合は,表示を確認した上で,セルをコピーし,「値の貼り付け」によって文字列へ変換する方法がある。
2 PowerShellで文字列を作る
複数セルを自動処理する場合は,PowerShellで異体字セレクタを作ることができる。
$selector = [char]::ConvertFromUtf32(0xE0101)
$hafuji = "藤$selector"ExcelをCOM操作する場合は,対象セルの値にこの文字列を入れ,併せてフォント名を指定する。
氏名全体を画像として貼り付ける方法と異なり,文字検索及びコピーが可能な状態を維持できる。
3 VBAではサロゲートペアを使う
U+E0101は基本多言語面の外にあるため,VBAではUTF-16のサロゲートペアとして作ることができる。
Dim selector As String
selector = ChrW(&HDB40) & ChrW(&HDD01)
Range("A1").Value = "加藤" & selector & "太郎"
Range("A1").Font.Name = "游ゴシック"第4 既存のExcel様式へ安全に反映する方法
1 一括置換をせず,対象と例外を先に決める
同じ文書に複数の「加藤」があっても,全員が同じ字形を用いるとは限らない。
今回も,異体字へ変更する氏名と,通常の「藤」のまま残す氏名が同じシート内に併存していた。
そのため,単純な「藤」の一括置換は行わず,対象セルの一覧と例外セルの一覧を先に作成した。
戸籍等の根拠資料に基づかず,同姓者へ同じ異体字を機械的に適用してはならない。
2 元ファイルを残して編集済みコピーを作る
異体字を扱う前に,元のExcelファイルを変更せず保存し,別名の編集済みコピーを作成する。
これにより,フォント又は印刷設定に問題が生じた場合でも,元の様式へ戻ることができる。
3 複雑な様式ではXLSX内部の必要部分だけを変更する
XLSXファイルは,複数のXMLファイルその他の部品をZIP形式でまとめたものである。
既存の表を一般的な表計算ライブラリで一度読み込み,別のXLSXとして再生成すると,プリンター固有の設定その他の部品が欠落することがある。
今回の文書では,元のXLSXパッケージを維持し,次の部分だけを限定的に変更した。
| 対象 | 処理内容 |
|---|---|
xl/sharedStrings.xml | 対象氏名の「藤」の直後にU+E0101を追加し,例外氏名は変更しない。 |
xl/styles.xml | 游ゴシックを使用するフォント定義と対象セル用スタイルを追加する。 |
xl/worksheets/sheet1.xml | 指定したセルだけを追加スタイルへ変更する。 |
xl/workbook.xml | 必要な場合に限り,シート名の「藤」にもU+E0101を追加する。 |
この方法はXLSX内部を直接扱うため,通常の入力作業より難易度が高い。
実行する場合は,対象部品,変更前後の文字列,変更セル及びパッケージ内の欠落部品を自動検証する必要がある。
第5 正しく反映できたかを確認する方法
1 見た目だけで判断しない
異体字セレクタは通常は画面に表示されないため,見た目だけでは,文字列にセレクタが含まれているか判定できない。
対象セルの文字列をコードポイントに分解し,「藤」の直後にU+E0101が一つあることを確認する。
通常の「藤」を残すセルについては,U+E0101がゼロであることも確認する。
対象側だけを確認すると,例外氏名まで誤って変更したことを見落とすおそれがある。
2 変更したセルだけを差分確認する
元ファイルと編集済みファイルの値を比較し,差分が予定したセルだけであることを確認する。
併せて,#REF!,#VALUE!その他の数式エラーが発生していないことを確認する。
3 XLSX部品と印刷設定を確認する
元ファイルと編集済みファイルについて,XLSX内のファイル一覧を比較し,欠落又は想定外の追加がないかを調べる。
法務局等へ提出する様式では,用紙サイズ,印刷範囲,余白,拡大縮小及びプリンター設定も確認する。
最後に,Excel上の表示と印刷プレビュー又はPDF出力の双方で,右上が「ハ」の字形になっていることを目視確認する。
第6 普通の「藤」に戻って見える原因
1 フォントが異体字に対応していない
最も多い原因は,表示フォントが「U+85E4 U+E0101」の字形を持っていないことである。
その場合,異体字セレクタは無視され,基底文字である通常の「藤」が表示される。
2 コピー先で異体字セレクタが削除された
アプリケーション間のコピー,CSVへの変換,文字コード変換又はシステムへの登録時に,U+E0101が削除されることがある。
受渡し後は,文字列のコードポイントと実際の表示の両方を確認する必要がある。
3 閲覧する端末に同じフォントがない
作成したPCでは正しく表示されても,別のPC,スマートフォン又はWebブラウザーに対応フォントがなければ,通常の「藤」に見えることがある。
字形を確実に見せる必要がある提出物は,元のExcelを保存した上で,表示確認済みのPDFも併用するのが安全である。
第7 まとめ
右上が「ハ」の異体字「藤」は,「藤」(U+85E4)の直後に異体字セレクタU+E0101を置くことで文字データとして表現できる。
ただし,正しい字形を表示するためには,その組合せに対応するフォントを指定しなければならない。
既存の法定相続情報一覧図等へ反映する場合は,氏名ごとに対象と例外を区別し,元ファイルを残した上で,変更セル,異体字セレクタ数,数式エラー,XLSX部品,印刷設定及び最終表示を順番に確認することが重要である。
第8 関連記事
1 mintsで外字・異体字の氏名を入力する方法
Excelで異体字を表示できても,裁判所のmintsの氏名欄にそのまま入力できるとは限らない。
mintsで使用できない外字・異体字を正字又はカタカナで入力し,正しい字体をPDFで示す方法については,mintsで外字・異体字の氏名を入力する方法―「使用できない文字」エラーと代替入力(AI作成)で説明している。
2 Excelを提出用PDFへ変換する方法
Excelで作成した一覧表等を訴訟記録として提出する場合は,原則としてPDFへ変換する必要がある。
用紙サイズ,印刷範囲及びPDF変換後の確認事項については,mintsにエクセルファイルを提出できるか―受付区分,記録外及びPDF変換時の用紙サイズ(AI作成)で説明している。
第9 出典・参考資料
① Unicode Consortium「Unicode Ideographic Variation Database」
https://www.unicode.org/ivd/
② Unicode Consortium「IVD_Sequences.txt」(U+85E4 U+E0101はAdobe-Japan1・CID+13957)
https://www.unicode.org/ivd/data/2022-09-13/IVD_Sequences.txt
③ Unicode Consortium「UTS #37: Unicode Ideographic Variation Database」
https://www.unicode.org/reports/tr37/
④ Microsoft Learn「cmap — Character to Glyph Index Mapping Table」
https://learn.microsoft.com/en-us/typography/opentype/spec/cmap
⑤ Microsoft Support「UNICHAR function」
https://support.microsoft.com/en-us/excel/functions/unichar-function
⑥ Microsoft Learn「Yu Gothic font family」
https://learn.microsoft.com/en-us/typography/font-list/yu-gothic
⑦ GlyphWiki「u85e4-itaiji-001」
https://glyphwiki.org/wiki/u85e4-itaiji-001