アクティブ行の色を変えたい

このQ&Aのポイント
  • アクティブ行の色を変えたい
  • EXCELの特定のシートでアクティブ行の色を変更したい
  • 「やったこと」の設定手順ではアクティブ行の色が変更されない
回答を見る
  • ベストアンサー

アクティブ行の色を変えたい

アクティブ行の色を変えたいのですが、下記の手順「やったこと」で設定しても設定色に変更されません。以下の操作以外は何もしていませんが、設定手順に問題があるのでしょうか。尚、対象はEXCELの該当「シート」のみ対応させたいと考えています。※[やったこと]以外の操作は一切行っていません。 [環境]MS Office2007(Windows10) [EXCEL情報] ファイル名:ムービーリスト フィールド名:A~H A列:NO「1からの連番で特に意味はない」 B列:タイトル名「約1300ほど」 C列:製作国 D列:ジャンル「アクション・・・他」 E列:主演 F列:実話可否「対象を(実話)と記載」 G列:アカデミー可否「対象を(アカデミー賞)と記載」 H列:内容「映画の解説」 [やったこと(条件付書式)] 1,「条件付き書式」→「新しいルール」→「数式を利用して、書式設定するセルを決定」 2,数式欄:=CELL("row")=ROW() 3,書式をクリック:色を選択 4,コマンドボタンの「OK」を選択 [やったこと(Visual Basic)] 1,「開発」→「Sheet1(ムービー)」→「コードの表示」 2,Worksheet_SelectionChangeイベント 「Private Sub Worksheet_SelectionChange(ByVal Target As Range)   Application.ScreenUpdating = True  End Sub」 3,「上書き保存」→「いいえ」→「ファイルの種類(EXCELマクロ有効ブック)」→「名前:ムービーリスト」→「保存」 以上ですが、宜しくお願いします。

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

  • ベストアンサー
  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.3

>そこで「=$A:$H1332」に変更しましたが保存できませんでした。 「=$A:$H1332」は誤りで、「$A$7:$H$1332」に変更してください。 「保存できませんでした」が意味不明です。 「適用」ボタンで変更できないということならA列に行番号が無いためです。 「$A:$H」のように列のみを指定すると1行から最終行まで全行を指定したことになります。

eokwave
質問者

お礼

範囲指定の仕方が分かりました。やってみて動作しました。ありがとうございます。

その他の回答 (3)

  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.4

適用先の入力位置が違う。

eokwave
質問者

お礼

範囲指定の仕方が分かりました。やってみて動作しました。ありがとうございます。図解いただき感謝いたします。

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

前の質問もそうだが、下記のステップ(下記3、4、5など以下など)を順次踏んで、コードを書いてますか。いきなりコードを他の箇所からVBE画面にコピペしている、などありませんか。 ワークシートの画面で 1.開発ーVisualBasic 2.VBE画面がでて、そこで 3.表示 4.プロジェクトエクスプローラー 5.そこでSheet1などシートの選択 6・コード  ーー>VBEの白紙の用紙が出る 7.「General」と表示されているところのドロップダウンで、Worksheetを選ぶ 8.右側の「Declaration」部で「tSelectionChange」を選ぶ 9.そこで出てきた Private Sub Worksheet_SelectionChange(ByVal Target As Range) End Sub の空白行に Target.Interior.ColorIndex = 6 を入れる。 シート画面を出し、シートのセルをクリックすると黄色に色づく。 ただし前段階で色付けたセルの色は消えない、これをどうするか。 勉強してください。 条件つき書式と違ってVBAでやるときの面倒なところ。

eokwave
質問者

お礼

アドバイスをありがとうございます。

  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.1

>[やったこと(条件付書式)] 適用先はどのように設定しましたか? =$A$1:$H$1300 のように指定すれば適用範囲を超えた行および列へ移動しても塗りつぶしされないでしょう。 すべての行を対象にするときは =$A:$H のように指定すると良いでしょう。 >[やったこと(Visual Basic)] https://hamachan.info/win7/Excel/active.html のような参考を丸写しですよね? このVBAの動作はアクティブセルの移動を検知して再計算していると思います。 動作確認していませんがコードに誤りが無いようです。

eokwave
質問者

補足

早速のアドバイスをありがとうございます。 おっしゃる通り「https://hamachan.info/win7/Excel/active.html のような参考を丸写しですよね?」でございます。構文行を1行空けたり、開始をずらしたりを何度も試しました「馬鹿なことでしたが、知らないことは触らない方が幸せかと思った次第です」。しかし、これは人助けの面もありまして、実現しなくてはなりません。質問での文言足らずはお許し下さい。 アドバイスいただいたとおり「次の数式を満たす値を書式設定」でエリアを指定するコマンドボタンを押してマウススクロールさせると「=$A$7:$H$1332」になりましたので「=$A7:$H1332」に変更しましたが保存できませんでした。そこで「=$A:$H1332」に変更しましたが保存できませんでした。 ご面倒欠けますが「値」をどう確定すれば良いのでしょうか。

関連するQ&A

  • VBAの設定「2題」

    最初に取り組んだEXCELのVBAですが、何人かの方にアドバイスを戴きましてやっと「まともな質問」ができる様になりました。やりたい事への完成アドバイスをお願いします。 「環境]MS Office2007(Windows10) ・ファイル名:ムービーリスト ・フィールド名:A~H、A列:NO「1からの連番で特に意味はない」、B列:タイトル名「約1300ほど」、C列:製作国、D列:ジャンル「アクション・・・他」、E列:主演、F列:実話可否「対象を(実話)と記載」、G列:アカデミー可否「対象を(アカデミー賞)と記載」、H列:内容「映画の解説」 ・該当シートにVBAを設定したい。 1,前段階で選択した色を消したい。 理由:下記の構文では選択したセルの色は変わるが、前段階で色付けたセルの色は消えない為。 Private Sub Worksheet_SelectionChange(ByVal Target As Range)   Target.Interior.ColorIndex = 6  End Sub 2,下記構文に「1」の構文をコピペして追加すると「1」で設定した機能が動作しない。※「General」→「Worksheet」、「Declaration」→「SelectionChange」の設定ができないのでコピペしました。 理由:「1」と「2」の機能を同時に動作させたい。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) For Each sha In ActiveSheet.Shapes If sha.Name = "MTxt" Then sha.Delete Next ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 0, 0, 1270, 80.6).Select Selection.Name = "MTxt" Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = _ "題名:" & Cells(Target.Row, 2).Value & Chr(13) & _ "内容:" & Chr(7) & Cells(Target.Row, 8).Value Target.Select End Sub 3,分からないこと 内容:下記の構文が記載されているとき、1の構文を追加したい時に「General」→「Worksheet」、「Declaration」→「SelectionChange」が選択できないので、1の構文を貼り付けていますが、正しい方法なのでしょうか。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) For Each sha In ActiveSheet.Shapes If sha.Name = "MTxt" Then sha.Delete Next ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 0, 0, 1270, 80.6).Select Selection.Name = "MTxt" Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = _ "題名:" & Cells(Target.Row, 2).Value & Chr(13) & _ "内容:" & Chr(7) & Cells(Target.Row, 8).Value Target.Select End Sub 以上ですが、宜しくお願いします。

  • シート上に指定した列を表示するエリアを作りたいII

    シート上に指定した列を表示するエリアを作りたいII。宜しくお願いします。 [環境]MS Office2007(Windows10) [EXCEL情報] ファイル名:ムービーリスト フィールド名:A~H A列:NO「1からの連番で特に意味はない」 B列:タイトル名「約1300ほど」 C列:製作国 D列:ジャンル「アクション・・・他」 E列:主演 F列:実話可否「対象を(実話)と記載」 G列:アカデミー可否「対象を(アカデミー賞)と記載」 H列:内容「映画の解説」 「xlsx」ファイルから「xlsm」ファイルへ保存すると「VBA」の設定が動作しません。プロセスが悪いと思いますが、結局のところ「EXCEL VBA未経験」分かっていないので解決できないでいます。以下に[解決したい内容(自身の勝手ですいません)]を2点あげております。アドバイスをお願い致します。 [解決したい内容(自身の勝手ですいません)] 1,保存後に起動するとテキストボックスは表示されるが、行を選択移動してもテキストボックスの内容が終了時のままです。 ※VBA保存時の手順「上書き保存」→「いいえ」→「EXCELマクロ有効ブック(*,xlsm)」→「保存」 2,1~5行目に作成されるテキストボックスのサイズ変更しても元に戻ってしまいます。サイズを変更する方法「固定化」を教えて下さい。 [やったこと] 1,EXCELファイルの1~5行目を空白としました。 2,操作手順:「開発」→「コードの表示」→「Sheet1(ムービー)」→「アドバイス構文」 Private Sub Worksheet_SelectionChange(ByVal Target As Range)   For Each sha In ActiveSheet.Shapes     If sha.Name = "MTxt" Then sha.Delete   Next   ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 0, 0, 270, 67.5).Select   Selection.Name = "MTxt"   Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = _       "タイトル名:" & Cells(Target.Row, 2).Value & Chr(13) & _       "内容:" & Chr(13) & Cells(Target.Row, 8).Value   Target.Select End Sub 以上ですが、宜しくお願いします。

  • Excelの条件付書式設定で1行おきに色をつけたシートにフォントの色の条件を指定したい

    Excel2003です 1行おきに色をつける条件付書式 「数式が =MOD(ROW(),2)=0のとき パターンを黄色」 を設定したシートのある列に 数値がマイナス(0より小さい)のとき、フォントの色を赤 数値がプラス(0より大きい)のとき、フォントの色を黒 の条件付書式設定したいのですがその方法を教えてください

  • Excelで選択しているセルの行を色づけしたい

    以前、このサイトでVBAを以下のように設定したのですが、 一度、ファイルを閉じてしまうと、無効になってしまいます。どうすれば、いいのでしょうか? Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range) ActiveSheet.Rows.Interior.ColorIndex = xlNone Rows(Target.Row).Interior.ColorIndex = 15 End Sub

  • シート上に指定した列を表示させるエリアを作りたい

    ご面倒をお掛けしますが、アドバイスをお願いします。 使用エクセルのバージョン:Office 2007 Professonal [エクセルシートの構成] A列:NO「1からの連番で特に意味はない」 B列:タイトル名 C列:製作国 D列:主演 E列:実話可否「対象を(実話)と記載」 F列:アカデミー可否「対象を(アカデミー賞)と記載」 J列:内容「映画の解説」 内容は情報が多いので「行」をクリックする事で、シート内の別エリアに表示させる方法は無いのでしょうか。その他、同じ効果が期待できる方法(行のスクロールでは無く)がありましたら教えて下さい。

  • セルの選択でその行に色を付けたい

    横に長いデータがあり、その1つのセルを選択するとその行全体に色が付くようにしたいのです。過去の質問で以下のようなものを見つけましたが、問題はその場合、通常のコピー→貼り付けができない点です。 その辺を問題なく行える方法はないでしょうか? よろしくお願いいたします。 Public m, n Private Sub Worksheet_SelectionChange(ByVal Target As Range) If m <> 0 Then Range(Cells(m, 1), Cells(m, 256)).Interior.ColorIndex = n End If m = Target.Row n = Target.Interior.ColorIndex Range(Cells(Target.Row, 1), Cells(Target.Row, 256)).Interior.ColorIndex = 6 End Sub

  • エクルで選択した行に色をつけて見易くしたい

    エクセルで選択した行に色をつけて見易くしたいと思い、以下のVBAを見つけて実行してみましたが、元のセルに色がついているとエラーが出てしまいます。 解決方法はないものでしょうか? Private m_ROW As Long '変更前の行番号 Private m_IRO As Long '変更前の色 Private Const MYCOLOR As Long = 36 '変更する色番号 Private Sub Worksheet_SelectionChange(ByVal Target As Range) '選択した行に色を付ける If Target.Row > 1 Then '2行目以降を対象とする '変更前の色に戻す If m_ROW <> 0 Then Rows(m_ROW).Interior.ColorIndex = m_IRO End If '変更前の行番号と色を記憶 m_ROW = Target.Row m_IRO = Rows(Target.Row).Interior.ColorIndex '色を変更 Rows(Target.Row).Interior.ColorIndex = MYCOLOR End If End Sub どなたかお助けください、、宜しくお願い致します。

  • エクセルで選択中の列や行を見やすくしたい

    タイトルのとおり、選択中の列や行の色が一列全部変るように したいと思い調べ、以下のVBEコードを見つけたんですが Public m Private Sub Worksheet_SelectionChange(ByVal Target As Range)  If m <> 0 Then   Range(Cells(m, 1), Cells(m, 256)).Interior.ColorIndex = xlNone  End If  Range(Cells(Target.Row, 1), Cells(Target.Row, 256)).Interior.ColorIndex = 6  m = Target.Row End Sub 確かに色は変るんですが、もともとついている箇所の色が 消えていってしまいます。 色が消えずに同じことは出来ないでしょうか。 ご存知の方いらっしゃいましたら教えてください。 よろしくお願いします。

  • エクセルVBAで条件付書式の色を取得

    セルに条件付書式で書式設定してあります。 A1は「値」100以下 A2は「値」500以下 A3は「値」1~10の間 B1は「数式」で=B1<A1 以下さまざまな数式があります。 条件に一致すると、セルの文字が「赤」になります。 このとき、 Private Sub Worksheet_SelectionChange(ByVal Target As Range) MsgBox Target.Font.ColorIndex End Sub を実行しても、ColorIndexは、赤の「3」ではなく「-4105」と表示されます。 「-4105」は何もフォントの色を指定してないセルでも同じく表示されます。 質問1.条件付書式で、条件が一致して表示されたフォントの色は取得できないのでしょうか? 質問2.-4105とは何でしょうか?

  • たとえばA2~H2まで(行)色をつけたい。

    お世話になっております。 Excel2000です。 たとえばA1~H1まではタイトル行だとします。 H列に○の印がついている行だけに色をつけたいのです。 (たとえばH2に○があるとしたら、A2~H2までの列に色をつけたい) とりあえず、私は、A2をクリック(選択)して条件付書式で設定しました。 (数式を選んで、=H2="○"という風にしてみました) そして、下のほうにマウスの右ボタンを押しながら書式のコピーをしてとりあえずA列は設定することはできましたが、A2から右の方に書式のコピーはできませんでした。そういうものなのでしょうか? 仕方がないので、B列、C列・・とそれぞれ条件付書式の設定を一列ずつしましたが、めんどうです。もっと簡単にできないものでしょうか?

専門家に質問してみよう