- ベストアンサー
エクセルでセルの色を変える方法
- エクセルでA、B、Cの3チームに分ける表を作成し、クリックでセルの色を変える方法を教えてください。
- シート名タブを右クリックしてコードの表示を選び、VBAコードを貼り付けます。各セルをクリックすると色が変わり、チーム名が表示されるようになります。
- さらに要望として、2試合目、3試合目のチーム名をア、イ、ウに変更し、色も変えるようにすること、4試合目以降は行わないこと、そしてクリックで動作するようにすることを希望します。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
関連するQ&A
- エクセル クリックでセルの色を変えるには?(3)
15人をA、B、C、D、Eの5チームに分ける表をエクセルでつくりたいと考えています。 (1)1行目に1人目のデータ。A1列に氏名。 (2)1人目がAチームなら、B1をクリックすると赤に変わり、かつ「A」とそのセルに表示。 (3)Bチームに変更したければ、C1をクリックすると青に変わり、かつ「B」とそのセルに表示。その際、B1の色を消す。 (4)Cチームの場合は、D1をクリック、黄色に変わり、かつ「C」と表示。その際、B1もしくはC1の色を消す。 (5)Dチームの場合はオレンジ、Eチームの場合は緑、でそれぞれ同様にE1、F1に「D」「E」と表示。 (6)2人目以降は同様に、2行目以降に表示。それぞれの行が干渉しないようにする。 以上が1試合目で、2試合目、3試合目も行う。 ただし、2試合目以降は、3チームに分ける。 (1)2試合目はG、H、Iのセル、3試合目はJ、K、Lセルを使う。 (2)2試合目、3試合目のチーム名はA、B、Cではなく、ア、イ、ウとする。(2試合目、3試合目共にア、イ、ウ) (3)1試合目はそのままで、2試合目、3試合目は別の色に変える。(Aチームは薄い赤、Bチームは薄い青、Cチームは薄い黄色)→細かな色の違いにはこだわりません。 (4)4試合目以降は行わない。 文章だけでは、表現力不足が大きく、非常にわかりにくいと思いますが、どうぞよろしくお願いいたします。 何度も同じような質問を重ねています。大変申し訳ありません。
- ベストアンサー
- オフィス系ソフト
- エクセル クリックでセルの色を変えるには?
9人をA、B、Cの3チームに分ける表をエクセルでつくりたいと考えています。 (1)1行目に1人目のデータ。A1列に氏名。 (2)1人目がAチームなら、B1をクリックすると赤に変わり、かつ「A」とそのセル表示。 (3)Bチームに変更したければ、C1をクリックすると青に変わり、かつ「B」とそのセルに表示。その 際、B1の色を消す。 (4)Cチームの場合は、D1をクリック、黄色に変わり、かつ「C」と表示。その際、B1もしくはC1の色を 消す。 (5)2人目以降は同様に、2行目以降に表示。それぞれの行が干渉しないようにする。 なお、以上が1試合目で、2試合目のチーム分けをそれぞれのメンバーの行の、E、F、Gの列を使って、同様に行えるようにできれば完璧なのですが…。 文章がつたなく申し訳ありません。ぜひ教えてください。
- ベストアンサー
- オフィス系ソフト
- エクセル クリックで色をつけるには?(4)
15人をA、B、C、D、Eの5チームに分ける表をエクセルでつくりたいと考えています。 (1)1行目に1人目のデータ。A1列に氏名。 (2)1人目がAチームなら、B1をクリックすると赤に変わり、かつ「A」とそのセルに表示。 (3)Bチームに変更したければ、C1をクリックすると青に変わり、かつ「B」とそのセルに表示。その際、B1の色を消す。 (4)Cチームの場合は、D1をクリック、黄色に変わり、かつ「C」と表示。その際、B1もしくはC1の色を消す。 (5)Dチームの場合はオレンジ、Eチームの場合は緑、でそれぞれ同様にE1、F1に「D」「E」と表示。 (6)2人目以降は同様に、2行目以降に表示。それぞれの行が干渉しないようにする。 以上が1試合目で、2試合目、3試合目も行う。 ただし、2試合目以降は、3チームに分ける。 (1)2試合目はG、H、Iのセル、3試合目はJ、K、Lセルを使う。 (2)2試合目、3試合目のチーム名はA、B、Cではなく、ア、イ、ウとする。(2試合目、3試合目共にア、イ、ウ) (3)1試合目はそのままで、2試合目、3試合目は別の色に変える。(Aチームは薄い赤、Bチームは薄い青、Cチームは薄い黄色)→細かな色の違いにはこだわりません。 (4)4試合目以降は行わない。
- ベストアンサー
- オフィス系ソフト
- エクセル VBA 変更→セルの色が変わる
http://okwave.jp/qa/q2601257.html ↑こちらの質問に近いのですが、 ・フォントではなくセルの背景色を変える ・A列からF列までのみ対象:G列以降は変更しても色が変わらない としたいのです。どのようにすれば良いのでしょうか。 VBAについては全く体系だって勉強したことがないので良く分かっていません。 見よう見まねで以下のようにしてみましたが、うまくいきませんでした。 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column > 6 Then Exit Sub Target.Interior.Color = RGB(255, 0, 0) End Sub 3行目のTarget.~の所が黄色に示されてエラーがでます。 どのようにしたら上手くいくかご教示下さい。
- ベストアンサー
- オフィス系ソフト
- クリックでセルの色を変える
過去の質問を捜したんですが、見つからなかったので質問させていただきます。 表のセルをクリックすると色が変わり、同じ行のセルをクリックするとそのセルの色が変わり先ほどのセルは元の色に戻るやり方がわかりません。 また、次の行のセルをクリックした時、前の行で最後にクリックしたセルの色はそのまま残しておきたいんです。 つまり、1行目では「A」を、2行目では「B」を選択したことが最後に一目で分かるようにしたいんです。 当方初心者ですが宜しくお願いします。
- 締切済み
- レンタルサーバ・ASP
- 選択セルに計算結果を表示
エクセルVBAで選択セルに計算結果を表示したいのですが、教えてください。 A列には、ID B・C列には値が入力されています。 下記の構文ですと、行のどこをダブルクリックしても、D列に合計が表示されます。 D列以降のどの行をダブルクリックしても、アクティブなセルに合計を表示したいです。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Cells(Target.Row, 4) = Cells(Target.Row, 2) + Cells(Target.Row, 3) End Sub
- ベストアンサー
- その他MS Office製品
- 【VBA】クリックする毎にセル色が変わる
Excelのセルをクリックするたびに、「色なし→赤→青→黄→黒→色なし」などのように色を順番に変更する方法があれば教えてください。 下記のSelectionChangeコードで、「色なし→黄→色なし」にできるのですが、複数の色を順番に表示させたいと思っております。 お手数お掛けいたしますが、よろしくお願い致します。 ================================================= Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim 各セル As Range Set Target = Intersect(Target, Range("A1:A5")) If Target Is Nothing Then Exit Sub For Each 各セル In Target With 各セル If .Value = 1 Then .ClearContents .Interior.Pattern = xlPatternNone Else .Value = 1 .Font.ColorIndex = 6 .Interior.ColorIndex = 6 End If End With Next End Sub =================================================
- ベストアンサー
- Excel(エクセル)
- エクセル セルをクリックすると色が変わる
セルをクリックするとそのセルの色が変わるといったようなマクロが組めるでしょうか。 色を変えたいのは、C2をクリックする「色あり」となり、D2は「色なし」、逆にD2をクリックすると「色あり」となり、C2は「色なし」にしたいです。 予定ではB2に氏名を入れておき、C2に在席、D2に不在といった感じで、社員の在席表を作成したいと考えております。ですから、コードの対象範囲を増やせるようにもお願いしたいのですが、不可能であれば、20人くらいの管理可能なコードを宜しくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- Excel VBA で1時的に右クリックを使いたい
30枚ほどのシートの表を一挙に変更したいです。ところが、各シートに次のコードが入っているため、右クリックしてコピーとか一切使えません。各シートの変更ができるまで、右クリック使いたいです。何か方法ありませんでしょうか? ' 画面の一番上表示 Dim hr As Range Set hr = Range("A1") '左上隅セルを設定 ActiveWindow.ScrollRow = hr.Row '行の一番上にスクロール ActiveWindow.ScrollColumn = hr.Column '列の一番左にスクロール End Sub Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) Cancel = True 'プロシージャ終了後に表示されるショートカットメニューの非表示 If Target.Row > 14 And Target.Row < 45 And Target.Column > 13 And Target.Column < 15 Then 明細入力フォーム.Show End If If Target.Row > 36 And Target.Row < 45 And Target.Column > 1 And Target.Column < 3 Then Call ShowCalendarFromRange2(Target) End If If Target.Row > 36 And Target.Row < 45 And Target.Column > 3 And Target.Column < 5 Then Call ShowCalendarFromRange2(Target) End If If Target.Row > 36 And Target.Row < 45 And Target.Column > 5 And Target.Column < 7 Then Call ShowCalendarFromRange2(Target) End If If Target.Row > 36 And Target.Row < 45 And Target.Column > 8 And Target.Column < 10 Then Call ShowCalendarFromRange2(Target) End If If Target.Row > 36 And Target.Row < 45 And Target.Column > 2 And Target.Column < 4 Then UserForm3.Show End If If Target.Row > 36 And Target.Row < 45 And Target.Column > 4 And Target.Column < 6 Then UserForm3.Show End If If Target.Row > 36 And Target.Row < 45 And Target.Column > 6 And Target.Column < 8 Then UserForm3.Show End If If Target.Row > 36 And Target.Row < 44 And Target.Column > 9 And Target.Column < 11 Then UserForm3.Show End If End Sub
- ベストアンサー
- Excel(エクセル)
- エクセル2003 VBAでセル移動
いつもお世話になります。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Row > 9 Then If Target.Column = 3 Then Cells(Target.Row, 4).Select ElseIf Target.Column > 5 Then Cells(Target.Row + 1, 1).Select End If End If End Sub これで、B列からC列を飛ばしてD列にセル移動して取りあえずの目的は達成しているのですが、 D列からB列には方向キー移動してくれません。Target.Columnが3になるんで当たり前なんですが・・・ B列の入力ミスがあるときマウスで移動させるか、A列まで戻ってから方向キーで上に上がるかです。 何かいい方法ありませんでしょうか。D列から方向キーで戻るときも、出来ればC列を飛ばしてほしいです。 よろしくお願いします。
- 締切済み
- Visual Basic
- 自動原稿送り装置からコピーやFAXをすると線が入るトラブルについて相談します。
- パソコンやスマートフォンとの接続は無線LANで行っています。
- 使用している回線はひかり回線です。
お礼
詳細なご回答、本当にありがとうございました。 素晴らしいできあがりとなりました。 なお、後日さらに別の要望をさせていただきたいと考えています。 「エクセル クリックで色を変えるには?(3)」として質問することを考えていますので、もしお手数でなければ、またお教えいただければ、本当にうれしく思います。