選択してる行に色を付ける@Excel

CATEGORYVBA
社内システムが使いづらくって、画面を見ながら考えて入力できるような代物じゃない。
なので、予め Excel で数字を計算しておいて、それを見ながら打ち込むわけだけど、件数が多くなると、どこを見てるのか分からなくなる。

オペレータさんがやってる、紙に打ち出した一覧表に定規を当てて、行を特定しながら入力するのをやりたくって。

ググって みたら、こんなの を見つけた。
  1. 対象範囲に条件付書式を設定する 条件は数式にして、↓のように設定し、書式を指定する
    =CELL("row")=ROW()
  2. Visual Basic Editor で、Worksheet_SelectionChange を以下のように定義する
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
     Application.ScreenUpdating = True
    End Sub
確かにやりたいことではあったんだけど、チラッチラッして見にくいこと、このうえない。しかも、遅いし。


どうせ、VBA を書かなきゃいけないんなら、こうした方が良いよね。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Application.Intersect(Target, Range("入力エリア")) Is Nothing Then
        Range("入力エリア").Interior.Pattern = xlNone
        Target.EntireRow.Interior.Color = 16764108
    End If
End Sub
色を付けたい範囲に、"入力エリア" って名前をつけて使う。
これでも、多少ちらつくけど、ずいぶんマシになった :-)



VB なんか、憶える気は更々ないのだけれど、Microsoft Office を使う以上、 VBA を避けては通れない。

また、普段、使わないから、簡単なことでも、ちゃんとできるまで時間がかかるんだよなあ。

そんなレベルの人(僕)でも、そこそこ時間をかければ、何とかできるのは VB の「功」だと思うけど、 それゆえに、俄かプログラマレベルのプロが増殖してしまった(僕は、違うよ)のが「罪」だよなあ。

あー、思い出したら、またモヤモヤしてきた。 どっかで書き散らかそう。
関連記事
スポンサーサイト

VBA Excel

0 Comments

Leave a comment