|
こんばんは
>これでも成功しましたが、もっと簡単なコードはないでしょうか?
簡単なコードということなら、他にもありますが、
さや さんの場合、ループ処理は残したほうがよさそうですね!!
Sub フォントサイズの指定2()
Dim fsz10array As Variant
Dim rng As Range
fsz10array = Array("北海道", "神奈川県")
For Each rng In Range("a1:a50")
If Not IsError(Application.Match(rng.Value, fsz10array, 0)) Then
rng.Font.Size = 10
End If
Next
End Sub
神奈川県という条件が増えたと言うことは、
さらにフォントサイズを変更する都道府県が増える可能性は十分に
推測出来ます。
増える毎にIFを追加するのではなく、フォントを変更する都道府県リストデータだけ
の変更(データの追加)でコードの変更をしなくて良いようなコードにすることを考えましょう!!
上記は説明の都合上、配列データをコード内で記述しましたが、
実際には、フォントサイズを変更する都道府県データは、別にシートの
セル(例、SHEET2のA列に変更リスト作成する)に入力しておき、
上記のようなコード(Match関数を使う)にすると
コードの変更が少なくて済みます。
(セルに条件データを配置すれば、Match関数以外の方法もありそうです)
ちょっと難しいけど、Match関数から調べてみて下さい。
|
|