- ベストアンサー
検索値が隣どうしの場合に黄色に塗潰されない
- 検索値が隣どうしの場合に黄色に塗潰されない不具合が発生しています。修正方法を教えてください。
- 質問のソースコードを提供しています。修正のためのソースコードを教えてください。
- 質問の例題を提供しています。検索値によって黄色・赤色・青色で塗潰されるセルを教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
どかたかと言わず、現在「このユーザに質問する」があるので私に質問すればよかったのに。多分このプログラムは、私にしか直せません、他の人が答える場合、このプログラムを無視して、新しく作ると思います。 前の質問のアドレスを載せれば、プログラムを直接乗せる必要はないと思います。無駄に質問が長くなるだけです。 ' Option Explicit ' Sub Macro1() ' Dim Col As Integer Dim IRange As Range ' Cells.Interior.Pattern = xlNone [A13:O557].ClearContents ' For Col = 0 To [Q1] - 1 Set IRange = [A1:O11].Offset(Col * 13) IRange = [A1:O11].Value Level1 IRange, Cells(2, Col + 17) Next Col End Sub ' Sub Level1(IRange As Range, ByVal Search As Integer) ' Dim Cell1 As Range Dim TableC(43) As Integer Dim Count As Integer ' For Each Cell1 In IRange ' If Cell1 = Search Then Count = Count + 1 Level2 Cell1, TableC(), Search Cell1.Interior.Color = vbYellow End If Next Cell1 ' For Each Cell1 In IRange ' If Cell1.Interior.Color <> vbBlue Then ElseIf TableC(Cell1) < Count Then Cell1.Interior.Pattern = xlNone End If ' 差が1で重複の場合、紫にする。気に入らなければここをコメントにする。 If Cell1.Interior.Color <> vbRed Then ' ElseIf TableC(Cell1) = Count Then ' Cell1.Interior.Color = vbMagenta ' End If ' Next Cell1 End Sub ' Sub Level2(Cell1 As Range, TableC() As Integer, Search As Integer) ' Dim Cell2 As Range Dim TableB(43) As Boolean Dim RowF As Integer Dim ColF As Integer ' RowF = Cell1.Row > 1 ColF = Cell1.Column > 1 ' For Each Cell2 In Cell1.Offset(RowF, ColF).Resize(2 - RowF, 2 - ColF) RowF = Val(Cell2) ' If Cell2 < "01" Then ElseIf Abs(Cell1 - Cell2) = 1 Then Cell2.Interior.Color = vbRed ElseIf Cell1 = Cell2 Then ElseIf Cell1.Address <> Cell2.Address Then Cell2.Interior.Color = vbBlue End If TableC(RowF) = TableC(RowF) + 1 + TableB(RowF) TableB(RowF) = True Next Cell2 End Sub 前のプログラムが気に入らず、勝手に新しい機能をつけました。差が1の場合、全てに重複があるかどうか判らない。この場合、青と赤の中間、マゼンタにしました。赤のままの方がよければ、右に’がついている所をコメントにして下さい。 実は、不具合を知らせる為に、あなた宛てに質問したのですが、連絡は来ていませんか。もしそうなら「このユーザに質問する」は機能していないこという事です(OKWAVEではよくある事です)。すみませんが、連絡が来ているかどうか確認していただけますか。 もう1つ、1ケ月程前の質問(青が付いていない)が気になります。よければアドレスを載せて下さい。 あなた宛ての質問は、不要になったので削除しました。
お礼
回答頂きありがとうございます。 最初に回答頂いた後の確認不足でした。 再度、頂いた回答で修正されている事を確認しました。 新しい機能を付けて頂き、より区別しやすくなりました。 活用させて頂きます。 >実は、不具合を知らせる為に、あなた宛てに質問したのですが、連絡は来ていませんか。もしそうなら「このユーザに質>問する」は機能していないこという事です(OKWAVEではよくある事です)。すみませんが、連絡が来ているかどうか>確認していただけますか。 >もう1つ、1ケ月程前の質問(青が付いていない)が気になります。よければアドレスを載せて下さい。 この質問はOKWEBではなくBIGLOBEからさせて頂いてます。 「このユーザーに質問する」という機能は無いですし、私宛の連絡も来ていないです。 また、アドレスを載せる方法も無いです。 次回からは頂いた回答の確認に時間を取ってから質問を締め切るようにします。 このたびはありがとうございました。