|
>>Sub 文字色変更()
>> a = Range("A1").Font.ColorIndex
>> Select Case a
Case a=2
>> Range("A1").Font.ColorIndex = 1
>> Case Else
>> Range("A1").Font.ColorIndex = 2
>> End Select
>>End Sub
これ、上記のコードでもエラーにはなりませんよね?
つまり、文法的には間違っていません!!
(意図された動作をしないだけで・・・)
これをIf文で置き換えると
Sub main()
a = Range("A1").Font.ColorIndex
If a = a = 2 Then
Range("A1").Font.ColorIndex = 1
Else
Range("A1").Font.ColorIndex = 2
End If
End Sub
二つコードは同じ動作をします。
つまり、tap さんが意図していない動作をしますが、
途中でコードが止まるようなエラーにはなりません。
正しく動作するコードと上記二つのコードをよく見比べて
そして一行一行検証してみてください。
そうするとこの問題でふたつのことを覚えることができますから・・・。
|
|