Excel (VBA)

Excel VBAに関するフォーラムです。
  • 掲示板への投稿には会員登録(無料)が必要です。会員登録がまだの方はこちら
  • 掲示板ご利用上のお願い」に反するご記入はご遠慮ください。
  • Q&A掲示板の使い方はこちらをご覧ください
トピックに返信
質問

 
(Windows 10 Home : Excel 2019)
Excel VBAのユーザーフォームのListViewにて旧漢字の表示ができない問題
投稿日時: 23/11/20 15:10:40
投稿者: Katsumi_636

ExcelのVBAにてユーザーフォームを使って入力フォームを作成しております。
 
コントロールの一つListViewを使っているのですが、旧漢字(異体字)を表示させるために設定フォントを異体字対応のものに変えました。しかし異体字の部分のみ「???」とはてなマークが3つ表示されたり、異体字の代わりに標準字が表示され、その後ろに「??」とはてなマークが2つ続いたりします。
ListViewに代入される値はExcelワークシートの値を参照しています。もちろん、ワークシート側ではフォントを変更することで異体字が正しく表記されています。
ListView側で正しく表記させる方法をご教示お願いします。
 
※フォントは異字体表記に対応した「IPAmj明朝フォント」というものを新たにインストールして使用しております。
 
試したこと:
ListViewのフォントが本当に変更されているか確認する。
 →その他複数のフォントに設定してみて、変更の反映を確認できた。
 
エクセルの表でのセルや、ユーザーフォームのテキストボックスにて異体字が表示できるか確認する。
 →IPAmj明朝フォントを設定することで異体字を表示できることを確認できた。

回答
投稿日時: 23/11/20 16:02:55
投稿者: simple

直接の回答ではありません。
ListViewはTreeViewと並んで、かなり昔に作成され既にメンテナンスも凍結されているツールのようです。
従って、他のコントロールと振る舞いが異なる点があっても不思議ではありません。
こればかりはユーザー側ではいかんともしがたいので、
他のコントロールを検討するなどの方法をとられたほうがよいかと思います。
# Microsoftが運営する質問掲示板に確認されるとよいかもしれません。

回答
投稿日時: 23/11/20 16:43:33
投稿者: sk

引用:
フォントは異字体表記に対応した「IPAmj明朝フォント」というものを
新たにインストールして使用しております。

引用:
コントロールの一つListViewを使っているのですが、旧漢字(異体字)を
表示させるために設定フォントを異体字対応のものに変えました。
しかし異体字の部分のみ「???」とはてなマークが3つ表示されたり、
異体字の代わりに標準字が表示され、その後ろに「??」とはてなマークが
2つ続いたりします。

ListView(を含む Microsoft Windows Common Controls 6.0 )が
Unicode IVS をサポートしていないからでしょう。

トピックに返信