- ベストアンサー
[ExcelVBA]条件対象セルへの値の設定
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
以下のコードで試してみてください。 Sub Test() Dim c As Range Dim FRng As Range With Sheets("Sheet1") For Each c In .Range(.Cells(1, "C"), .Cells(1, Columns.Count).End(xlToLeft)) Set FRng = .Range(.Cells(2, "A"), .Cells(Rows.Count, "A").End(xlUp)).Find(What:=c.Value, LookIn:=xlValues, LookAt:=xlWhole) If Not FRng Is Nothing Then If .Cells(FRng.Row, c.Column).Value >= 1 Then .Cells(FRng.Row, c.Column).Value = 0 End If End If Next End With End Sub
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
条件を文章で記述すること。 画像だけ見せて、コメントも添えないのは、心得違い。 前の質問でセルに色を付ける課題だったと思うが、解決したのかな。 関連あるならば、その時の質問番号などのを記述するとかすべきだ。 セルの値の条件をVBAなどでColorIndexで設定しておれば、どこにそのセル(色を付けたセル)があるかを判定はやさしいが、そうでないと、条件そのものを文章で記述してもらえわないと、やりづらい。 色のついてないセルでセルの値が0でないようなセルは、対象になっているようだが、どういう理由か? >セルに値を設定はできないようです 一般には硬派言えないが、何をみて、何をやってそういっているのか。 範囲指定した全セルを、舐めるのは簡単にForEachーNext で(1セルずつ、全セルを掴めるが、あとはセルの条件判定と、Cl.Value=0だけでしかない。 沢山の人が見る質問として、実際は#1の回答でOKかもしれないが、補足すべきだ。
- kkkkkm
- ベストアンサー率66% (1735/2605)
No1の追加です。 商品コードと記載されているセルがA1だとした場合のコードです。
お礼
問題なく実行できました。 ありがとうございました。