• ベストアンサー

エクセルで

アクティブ・セルの行の色を変える(どのセルを選んでも、選んだ瞬間にその行の色を変える)には、VBAでマクロを組むしかありませんか??エクセルの機能だけでは無理でしょうか?マクロを組むとしたら、どんな感じになるのでしょう?

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.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

foolyfool
質問者

お礼

完璧ですっ。こうゆうふうにしたかったんです。本当にありがとうございましたっ。。。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

#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

foolyfool
質問者

補足

そうです、こんな感じです。これでセルだけじゃなく、その行全部が変わるようにしたいのですが。。。

全文を見る
すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

#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)シートに戻ってセルをクリック セルに色(この場合は黄色)が付きます。 元の色の付いたセルの色を消すなら少し難しくなります。

foolyfool
質問者

補足

 説明が悪くてすみません、ちょっとやりたいことと違いました。  エクセルで作業する上で見やすいように、アクティブ・セルの行全体を、選んだときだけ、色をつけたいんです。だから、他の行のセルがアクティブになったときは、そのセルの行だけの色が変わるとゆう風にしたいんですが・・・・

全文を見る
すると、全ての回答が全文表示されます。
  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.1

Private Sub Worksheet_SelectionChange(ByVal Target As Range) Target.Interior.ColorIndex = 8 End Sub 実行したいシートのタブを選んで「右クリック」-「コードの表示」を選んで、開いたウィンドウのカーソルが点滅している部分に上記のコードを貼り付けてください。 "8" の数字を変えると色が変わります。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルで複数行のデータを1行にする方法

    エクセルで複数行のデータを列挿入--切り取り--貼り付けで1行にしたいのですが、 その様なセルの並びが沢山あります。 VBAマクロなどで一度に出来る方法が有りましたらどうか教えて下さい。 データはこんな感じです。 ┌─┬─┬─┬─┬─┐ │01│04│07│10│13│ ├─┼─┼─┼─┼─┤ │02│05│08│11│14│ ├─┼─┼─┼─┼─┤ │03│06│09│12│15│ ├─┼─┼─┼─┼─┤ │16│19│22│25│28│ ├─┼─┼─┼─┼─┤ │17│20│23│26│29│ ├─┼─┼─┼─┼─┤ │18│21│24│27│30│ ├─┼─┼─┼─┼─┤ この様に並び替えたいのです。 ┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐ │01│02│03│04│05│06│07│08│09│10│11│12│13│14│15│ ├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ │16│17│18│19│20│21│22│23│24│25│26│27│28│29│30│ ├─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┼─┤ 何卒宜しくお願いいたします。

  • Excelマクロ&VBAで一列に3行ごとに数字を入力

    Excelのマクロ&VBAで、例えばA1セルからA120セルに数字1から40を3行ごとに「111・222・333・444・・・・・・・・・・・・393939・404040」と入力する。

  • Excelマクロである条件のセル間(行方向)に色を付けたい

    Excelマクロである条件のセル間(行方向)に色を付けたい 例えば、エクセルのあるセルに"A"が書かれていた場合、次にその行のセルに"円"と書かれているまでは、続く行のセルには色をつけるようにしたいのですが、良い方法を教えて頂けないでしょうか? 対象となるシート(列方向)に、今回のパターンが複数存在し、 それぞれにこの処理を実施することを想定しております。 (イメージ画像を添付します) お恥ずかしい話、当方VBAには明るくありませんので、簡単なサンプルコードを示して頂けると幸いです。

  • エクセルのマクロ

    エクセルのマクロを使いA行のセルの日付が今日の日付より30日以内のときはセルの色を赤くするにはどうすればよいのでしょうか?

  • Excel 2007 マクロ セルの色のカウント

    Excel 2007 マクロ セルの色のカウント 表に複数の色がセルについています。 色がついているセルの隣の列に「1」を返したいです。 どのようなマクロになりますでしょうか。 色がついている列は1行でC列になります。 ご回答よろしくお願いします。

  • EXCEL VBAで変更のあった行の色を変えたい

    EXCEL VBAで変更のあった行の全てのセルの色を変えたいと思っているのですが,可能でしょうか?もし可能でしたら,どのようにしたら良いのでしょうか?

  • エクセルのマクロについて教えてください

    エクセルで、その行の中に赤色のセルがある場合は、その行のA列のセルに"○"を入れるというのは、マクロで書く場合はどのように書けばよいでしょうか。 行は1~100まで、列はA~Zまであります。赤色のセルはB列~Z列の所々に点在します。

  • エクセルのマクロ機能について

    もう一度 助けてください エクセルの集計表である列の移動 並べ替えをエクセルのマクロ機能でつくりました ボタンを押すだけで うまくいっていたのですが データーが増え行を増やそうと 前のマクロを削除して また最初から作ろうとしたところ 記録できません 静的変数が64KBを超えたとかでます 編集 削除しようにも実行とキャンセルしか使えません いろいろほん(VBA)を見ましたが 私のレペルでは100年無理です 簡単なエクセルのマクロにも 範囲があるんですか あるひとつのシートだけマクロを残しています 手作業の集計や決まった作業はたいへんです

  • エクセル マクロ 行 非表示

    マクロについてご教授お願い出来ないでしょうか。 マクロ初心者です。 エクセル アクティブセル(ex A120セルやA20セル)の行から1行目までを非表示にさせるマクロがわかりません。 アクティブセルから下の行を非表示にさせるマクロは下記URLにて紹介がありましたが・・ https://www.relief.jp/docs/excel-vba-hide-below-active-cell.html また、もし可能でしたら、アクティブセルからA2行目までの非表示、つまり 1行目は残すマクロが可能でしたら、合わせてご教授どうぞよろしくお願い致します。 

  • 特定の色がついているセルの削除

    結構、技術がいることかもしれないので 素人でできることか分かりませんが相談させてください。 エクセルで、特定の色がついたセルを行ごと削除したいです。 VBAじゃないとできないんでしょうか? せいぜい、エクセルでマクロで簡単なことをするくらいまでの レベルの人間ですが、比較的、簡単にできる方法が あれば教えてください。

専門家に質問してみよう