Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


34762 / 76738 ←次へ | 前へ→

【47182】Re:オートフィルタ抽出後の値の修正
発言  ichinose  - 07/3/3(土) 19:17 -

引用なし
パスワード
   こんばんは。

>オートフィルタで抽出をかけた後のセルの値の修正方法を教えてください。
>目的は「[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
これでも良さそうですけどね!!

0 hits

【47181】オートフィルタ抽出後の値の修正 Luna 07/3/3(土) 18:31 質問
【47182】Re:オートフィルタ抽出後の値の修正 ichinose 07/3/3(土) 19:17 発言
【47193】Re:オートフィルタ抽出後の値の修正 Luna 07/3/4(日) 16:33 質問
【47194】Re:オートフィルタ抽出後の値の修正 かみちゃん 07/3/4(日) 16:46 発言
【47195】Re:オートフィルタ抽出後の値の修正 Luna 07/3/4(日) 17:13 質問
【47197】Re:オートフィルタ抽出後の値の修正 ichinose 07/3/4(日) 17:26 発言
【47183】Re:オートフィルタ抽出後の値の修正 Kein 07/3/4(日) 0:03 発言

34762 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free