A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
>A列に入力されたことにより、……
>B列は、1~8の数値データです
A列の入力を受けて,計算されたB列の値を拾って色を塗ります。
手順:
シート名タブを右クリックしてコードの表示を選ぶ
現れたシートに下記をコピー貼り付ける
private sub Worksheet_Change(byval Target as excel.range)
dim h as range
dim a as variant
a = array(3,4,5,6,7,8,19,20)
on error resume next
for each h in application.intersect(target, range("A:A"))
cells(h.row, "A").resize(1, 6).interior.colorindex = xlnone
cells(h.row, "A").resize(1, 6).interior.colorindex = a(cells(h.row, "B").value - 1)
next
end sub
ファイルメニューから終了してエクセルに戻る
A列に何か記入すると,B列が1から8まで変わり色が付く。
実際にはB列は1から8だけとは限らず,例えば値が入らない値をA列に記入する(たとえばA列でDelteする,B列で計算できない値が入ってエラーが出る)と,色が消える。
No.2
- 回答日時:
No.1です!
たびたびごめんなさい。
>B列の1~8の数値データにより・・・
の部分を見逃していました。
前回のコードはA列に1~8が入る前提でのコードですので、前回のコードは無視して
↓のコードに変更してください。
Private Sub Worksheet_Change(ByVal Target As Range) 'この行から
Dim c As Range
If Application.Intersect(Target, Range("A:A")) Is Nothing Or Target.Count <> 1 Then Exit Sub
With Target
.Resize(1.6).Interior.ColorIndex = xlNone
Set c = Worksheets("Sheet2").Range("A:A").Find(what:=.Offset(, 1), LookIn:=xlValues, lookat:=xlWhole)
If Not c Is Nothing Then
.Resize(1, 6).Interior.ColorIndex = c.Offset(, 1).Interior.ColorIndex
End If
End With
End Sub 'この行まで
※ Sheet2は前回同様ですが、Sheet2のA列は作業するSheetのB列に表示されるデータにしておきます。
※ 作業SheetのB列データは数式によって表示されるデータというコトですので、B列のチェンジイベントではダメだと思います。。
そこで今回もA列のチェンジイベントにしています。
何度も失礼しました。m(_ _)m
No.1
- 回答日時:
こんにちは!
一例です。
↓の画像のようにSheet2のB列の色をA列に入るデータで塗りつぶしておきます。
その下準備ができた上での方法です。
画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面に
↓のコードをコピー&ペーストしてA列にデータを入力してみてください。
Private Sub Worksheet_Change(ByVal Target As Range) 'この行から
Dim c As Range
If Application.Intersect(Target, Range("A:A")) Is Nothing Or Target.Count <> 1 Then Exit Sub
With Target
.Resize(1, 6).Interior.ColorIndex = xlNone
Set c = Worksheets("Sheet2").Range("A:A").Find(what:=.Value, LookIn:=xlValues, lookat:=xlWhole)
If Not c Is Nothing Then
.Resize(1, 6).Interior.ColorIndex = c.Offset(, 1).Interior.ColorIndex
End If
End With
End Sub 'この行まで
こんなんではどうでしょうか?m(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) VLOOKUP が機能しない、その原因は何 ? 8 2022/10/19 12:06
- Excel(エクセル) Excel 値を返す数式についてです 3 2022/11/21 20:08
- Excel(エクセル) Power Query でのデータの一括修正について 2 2022/05/10 02:00
- Excel(エクセル) EXCEL 関数を教えてください。(A列の同じ値が複数ある場合vlookupで出来ますか) 4 2022/12/07 20:54
- Excel(エクセル) Excel2019 列と列(2列)の数値の重複を調べたい 1 2023/05/11 13:35
- Excel(エクセル) Excelの中央値の複数条件について 3 2022/05/24 21:22
- Excel(エクセル) 【Excel関数】値が合致するセルの隣のセルを表示させたい 8 2022/10/12 17:44
- Excel(エクセル) excelにおける転記マクロの書き方 2 2023/05/12 03:16
- Excel(エクセル) Excelで、別シートの表のステータスに伴った動的な自動転記をしたいです。 2 2023/06/14 15:56
- Excel(エクセル) Excelの文字列を数字に変換する方法について 6 2023/07/31 21:18
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
お店に入るために行列に並んで...
-
エクセルで二つの数字の小さい...
-
VBA 連続行データを5行ずつ隣の...
-
PowerPointで表の1つの列だけ...
-
スマートな関数を教えて下さい。
-
Excel元に戻す方法を教えてくだ...
-
関数を教えて下さい。
-
「B列が日曜の場合」C列に/...
-
A,B,C3種類の文字で無限列を作る
-
Excelで、A列にある文字がB列...
-
50人を数回、グループ分けする...
-
Excelの関数に関する質問です
-
[関数得意な方]教えて下さい・...
-
Excel、市から登録している住所...
-
文字列に数字を含むセルを調べたい
-
エクセルの並び変えで、空白セ...
-
エクセルかグーグルスプレッド...
-
エクセル 同じ値を探して隣の...
-
エクセルで文字が混じった数字...
-
エクセル(勝手に太字になる)
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで二つの数字の小さい...
-
PowerPointで表の1つの列だけ...
-
エクセルで最初のスペースまで...
-
2つのエクセルのデータを同じよ...
-
エクセル 同じ値を探して隣の...
-
エクセル(勝手に太字になる)
-
「B列が日曜の場合」C列に/...
-
エクセル 文字数 多い順 並...
-
EXCELで 一桁の数値を二桁に
-
Excelで半角の文字を含むセルを...
-
エクセルで文字が混じった数字...
-
エクセルの項目軸を左寄せにしたい
-
Excel、市から登録している住所...
-
エクセルで、列の空欄に隣の列...
-
エクセルの表から正の数、負の...
-
エクセルの並び変えで、空白セ...
-
VBAで文字列を数値に変換したい
-
A列がない・・・A列が非表示に...
-
文字列に数字を含むセルを調べたい
-
50人を数回、グループ分けする...
おすすめ情報