|
こんばんは。
>オートフィルタで抽出をかけた後のセルの値の修正方法を教えてください。
>目的は「[D列]の[2]と等しくないデータを[2]に変更したい」です。
>
> A | B | C | D |
1 項目1| 項目2 | 項目3 | 項目4 |
2 AAA | 111 | ABC | 2 |
3 BBB | 222 | DEF | 2 |
4 CCC | 333 | GHI | 2 |
5 DDD | 444 | JKL | 1 |
6 EEE | 555 | MNO | 1 |
7 FFF | 666 | PQR | 3 |
これ、実際には上記のように1行目は見出し(項目名)になっているのですよね?
そうだとして・・・・。
>
>Sub test()
Dim a As Variant
Worksheets("Sheet1").Range("A1").AutoFilter field:=4, Criteria1:="<>2", Operator:=xlAnd
For Each a In Worksheets("Sheet1").AutoFilter.Range.Columns(4).SpecialCells(xlCellTypeVisible)
If a.Row > 1 Then a.Value = 2
Next
Worksheets("Sheet1").Range("A1").AutoFilter
>End Sub
こんなコードで可能だと思いますが、
これ、入力範囲のD列を全部2にするだけなら、
Sub testtest()
With Worksheets("sheet1").Range("a2", .Cells(.Rows.Count, "a").End(xlUp)).Offset(, 3)
If .Row > 1 Then
.Value = 2
End If
End With
End Sub
これでも良さそうですけどね!!
|
|