Gizport
1 回答
0
Share (facebook)
34
view
全般

エクセル・マクロで条件付き書式の設定を行いたいです。 知恵袋で使えそ...

エクセル・マクロで条件付き書式の設定を行いたいです。
知恵袋で使えそうな回答を見つけたのですが、やりたいことを実行する為には応用が必要なようです。
お知恵をお貸しください。よろしくお願いします。 <設定したい内容>
①A10:A30の間で「あ」と入力された場合(例えば、A12に「あ」と入力」)、B12:H12のセルをcolor=56で塗りつぶす
②C10:C30の間で「あ」と入力された場合(例えば、C20に「あ」と入力」)、D20:H20のセルをcolor=56で塗りつぶす
②E10:E30の間で「あ」と入力された場合(例えば、E15に「あ」と入力」)、F15:H15のセルをcolor=56で塗りつぶす

上のような同一の書式設定を複数列で実行させたいのです。
以下はアレンジすれば使えるかもしれないと思った知恵袋の質問と回答です。
(初心者な為、見当違いかもしれません)

<2008年8月の知恵袋回答>
◆質問:A列の値によって、その行のC列のセルの塗りつぶしの色を変えたい
◆回答:
・複数のセルの値の入力に対応しています。
・指定した文字列が入力されていたセルで、指定した文字列以外が入力された場合、ないしはdeleteされた場合、色が消えるようになっています。
・セル範囲の指定はSet Rng1およびSet Rng2のところを変えるだけでOKです。

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rng1 As Range
Dim Rng2 As Range
Dim c As Range
Dim myColor As Long

Set Rng1 = Range("A:A") '判定の対象となる列
Set Rng2 = Range("C:C") '色を変える列

If Intersect(Target, Rng1) Is Nothing Then Exit Sub

For Each c In Intersect(Target, Rng1)
With c
Select Case .Value
Case "あ"
myColor = 5
Case "い"
myColor = 6
Case "う"
myColor = 3
Case "え"
myColor = 10
Case "お"
myColor = 8
Case "か"
myColor = 4
Case "き"
myColor = 7
Case Else
myColor = xlColorIndexNone
End Select
Intersect(c.EntireRow, Rng2).Interior.ColorIndex = myColor
End With
Next
End Sub
12
Yahoo!知恵袋 5646日前
コメントする
お気に入り
1
質問者が選んだベストソリューション
質問の設定範囲限定ですが

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count <> 1 Then Exit Sub
If Target.Value <> "あ" Then Exit Sub
If Intersect(Target, Range("A10:A30,C10:C30,E10:E30")) Is Nothing Then Exit Sub
Dim myRng As Range
Set myRng = Target.Offset(0, 1)
myRng.Resize(1, 8 - Target.Column).Interior.ColorIndex = 53
Set myRng = Nothing
End Sub

【追記】
設定で、A15に「あ」と入力後、C15に「あ」と入力といった複合条件での処理方法が不十分です。

【補足】を受けて

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Intersect(Target, Range("A10:A30,C10:C30,E10:E30")) Is Nothing Then Exit Sub
Dim myRng As Range, TV
TV = Target.Value
Range("A" & Target.Row & ":H" & Target.Row).Interior.ColorIndex = xlNone
'Application.EnableEvents = False
'Range("A" & Target.Row & ":H" & Target.Row).ClearContents
'Target.Value = TV
'Application.EnableEvents = True
If TV = "あ" Then
Set myRng = Target.Offset(0, 1)
myRng.Resize(1, 8 - Target.Column).Interior.ColorIndex = 53
End If
Set myRng = Nothing
End Sub

入力行で、以前入力した文字も消去したい場合は、コード行頭の4ヶ所の「'」を取ってください。
Yahoo!知恵袋 5644日前
シェア
 
コメントする
 

参考になったと評価
  このQ&Aは参考になりましたか?

Share (facebook)
その他の解決方法を知っていますか?
回答する
全般
27
Views
質問者が納得IS12FはAPNをユーザが設定できない仕様になっています。
3774日前view27
全般
67
Views
質問者が納得そもそも、F12で正しいですか。 事前にフォーマットする必要はないです、リカバリ時にフォーマットやディスクの消去ができたので。(Cドライブは初期化されます) 手順間違えましたね。 補足 BIOS開いて、起動順番はHDDになってますか。 んーリカバリ領域壊れたか、ブートするためのものがなくなってますな。 ブートするための領域消しちゃったら、起動できないと思いますよ。 知識ないなら、リカバリディスクを注文するか、修理行きですかね
3913日前view67
全般
63
Views
質問者が納得AppleIDはないと先々困るよ。アプリのダウンロードさえできないんだから…最低限のことが書かれた冊子をもらいませんでしたか? また、AppleID取得の方法や、メール設定など、この画面を観れているなら、検索すれば丁寧に説明されているサイトが出てきますよ。わからなければまず検索することを身につけた方がいいですね。また、本屋に行けるなら、簡単に説明されている本が売っているので購入するのも良いと思いますね。
3983日前view63
全般
92
Views
質問者が納得いろいろ設定が必要です。 AU HPに記載されてますよ。 Au ID http://www.au.kddi.com/iphone/support/guide/auid.html 電話帳移行 http://www.au.kddi.com/iphone/support/guide/b.html パソコンなくても大丈夫ですよ。
4230日前view92
全般
79
Views
質問者が納得au ICカードを挿入していないのではないでしょうか。 古い端末に入っているau ICカードを新しい端末に挿入しなおしてください。 au ICカードはバッテリーパックを外してMicroSDスロットの隣にスロットがあると思います。 画像を参考にしてください。
4298日前view79

取扱説明書・マニュアル

1540view
http://www.au.kddi.com/.../is12f_torisetsu_shousai.pdf
246 ページ14.07 MB
もっと見る

関連製品のQ&A