■動機
VBAでは「?」となって扱えない空白や文字を何とかしたい。
■状況
WEBから読み込んだ文字がエクセルVBAで扱えない。
下の「」内は、VBAではいずれも「?」になってしまう。
「〜」 ←VBAにコピペすると?になります。
「 」 ←ここでは正しいようですがWEB取込では?です。
この空白はReplaceやTrimを使っても削除できません。空白のように見えても空白ではないようです。このままではこれらを区別することすらできません。
■解決策
下記の1)→2)を順に行う。
1) ASCW関数で文字コードが何かを調べる。
字Code=AscW(対象字)
2)文字コードで、変換したい字にReplaceする。
Replace(対象字, ChrW(字Code), "変換字")
■実例
「〜」→ Replace(Str, ChrW(12316), "~")
「 」→ Replace(Str, ChrW(160), "") '削除する場合
■感想
同じサイトでもページにより文字種が違ったりする。
下記のサイトに助けられました。
https://vba-create.jp/vba-ie-error-nbsp/