投稿者 ヤマダ  (学生) 投稿日時 2023/1/27 13:39:52
るきおさん

> 投稿いただいたプログラムを見ると、たとえば、student_nameが"あいう"の場合、w_fullnameは""になり、student_nameが"アイウ"の場合は"???"になるように見えます。これは想定された動作ででしょうか?

こちらは私が考えたプログラムの動作でしょうか?
私が考えたプログラムだと想定された動作ではありません。


> これは、あまり良いプログラムではありませんが、意図は想像できます。
chg_kana_nameの1文字目をASCIIコードに置き換えた場合、A0 以上または 1F以下であれば半角と判断する意図のように見えます。

文字コードによってバイト数の取り方が違うというの理解ができました。
下記のIF文の処理が読み取れずにいましたが、ASCIIコードとして半角とかどうか判定していたのですね、助かりました。
If AscB(Left(chg_kana_name, 1)) >= &HA0 Or AscB(Left(chg_kana_name, 1)) <= &H1F Then

頂いた資料を見てなんとかできそうです。
ありがとうございました。