回答編集履歴

1

解説追記

2019/11/11 02:28

投稿

hatena19
hatena19

スコア34073

test CHANGED
@@ -89,3 +89,41 @@
89
89
 
90
90
 
91
91
  [VBA - VBAで機種依存文字を含んだ文字列をifの条件とする|teratail](https://teratail.com/questions/136057)
92
+
93
+
94
+
95
+ 追記
96
+
97
+ ---
98
+
99
+ 質問のコードの間違いをコメントしておきます。
100
+
101
+
102
+
103
+ ```vba
104
+
105
+ Sub moji()
106
+
107
+ Dim s As String
108
+
109
+ s = Cells(1, 1).Value
110
+
111
+ 'この時点でsの中身は文字化けしていない。
112
+
113
+ If s Like "*[?]*" Then 'よってこれはFalseになり
114
+
115
+ MsgBox "文字化けしている"
116
+
117
+ s = StrConv(s, vbWide) 'は実行されない。
118
+
119
+ End If
120
+
121
+ Debug.Print s 'イミディエイトウィンドウ出力時に文字化けする。
122
+
123
+ '以下確認用
124
+
125
+ Cells(1, 1).Value = s '文字化けしていない
126
+
127
+ End Sub
128
+
129
+ ```