- ベストアンサー
エクセルで
アクティブ・セルの行の色を変える(どのセルを選んでも、選んだ瞬間にその行の色を変える)には、VBAでマクロを組むしかありませんか??エクセルの機能だけでは無理でしょうか?マクロを組むとしたら、どんな感じになるのでしょう?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
#3です。補足について、下記でどうですか。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) Static t As Long Static mae As Range t = t + 1 ' MsgBox t If t = 1 Then GoTo p01 mae.EntireRow.Interior.ColorIndex = xlNone p01: r = Target.Row Target.EntireRow.Interior.ColorIndex = 6 Set mae = Target End Sub
その他の回答 (3)
- imogasi
- ベストアンサー率27% (4737/17069)
#2です。 >他の行のセルがアクティブになったときは、そのセルの行だけの色が変わるとゆう風にしたいんですが Private Sub Worksheet_SelectionChange(ByVal Target As Range) Static t As Long Static mae As Range t = t + 1 ' MsgBox t If t = 1 Then GoTo p01 mae.Interior.ColorIndex = xlNone p01: Target.Interior.ColorIndex = 6 Set mae = Target End Sub
補足
そうです、こんな感じです。これでセルだけじゃなく、その行全部が変わるようにしたいのですが。。。
- imogasi
- ベストアンサー率27% (4737/17069)
#1を補足します。 (1)ツール-マクロ-VisualBasicEditorをクリック (2)VBAprojectの中のMicrosoftExcelObjectsのSheet1とかのいま問題にしているシート表示部分をダブルクリック (3)右側のコードウインドウ部分に下記を貼りつけ Private Sub Worksheet_SelectionChange(ByVal Target As Range) Target.Interior.ColorIndex = 6 End Sub (本当はGeneralのところをWorksheet、 DeclarationのところをSelectionChangeをクリックして選び、間に上記1行を入力する。 (4)シートに戻ってセルをクリック セルに色(この場合は黄色)が付きます。 元の色の付いたセルの色を消すなら少し難しくなります。
補足
説明が悪くてすみません、ちょっとやりたいことと違いました。 エクセルで作業する上で見やすいように、アクティブ・セルの行全体を、選んだときだけ、色をつけたいんです。だから、他の行のセルがアクティブになったときは、そのセルの行だけの色が変わるとゆう風にしたいんですが・・・・
- hana-hana3
- ベストアンサー率31% (4940/15541)
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Target.Interior.ColorIndex = 8 End Sub 実行したいシートのタブを選んで「右クリック」-「コードの表示」を選んで、開いたウィンドウのカーソルが点滅している部分に上記のコードを貼り付けてください。 "8" の数字を変えると色が変わります。
お礼
完璧ですっ。こうゆうふうにしたかったんです。本当にありがとうございましたっ。。。