エクセル2000で、社員台帳から特定の人物だけ削除しようと思いマクロを
組んだのですが、どうもうまくいきません。
社員には全員00から99の2桁のコードがついています。(列Aにあります)
2桁のコードが00の人物だけ削除したいのですが。
次のようなマクロを組んだのですが、どこがおかしいのでしょうか?
とりあえず、20行程度処理しようと思います。
Range("A2").Select
For Each セル In Range("A2:A20")
If セル = "00" Then Selection.EntireRow.Delete
Next
No.4
- 回答日時:
リスト内を選択して「データ」-「フィルタ」「オートフィルタ」をクリック。
A列に▼が出来るのでそれをクリックして「00」を選択すると「00」のものだけが
抽出されます。
別の列をキーにして絞り込むなりして行削除すれば良いのでは?
(A2を選択してCtrl+Shift+Endで抽出した範囲を選択して右クリック行削除)
↑が出来るのであればマクロの記録でこの手順を記録すればマクロになります。
99のときなら99に変えてマクロを作れば良いのでは?
No.3ベストアンサー
- 回答日時:
>それから、End If の部分でエラーで落ちました。
「End If に対する If がない」>というメッセージでした???
これは、うちでは、再現しません。
再度ご確認を
>と、いう訳で、00のコードを持つ社員が複数名おり、かつ連続して出てくる
>可能性があります。
A2とA3が00の場合、A2が00なので、A2の行を削除しま
すが、このため、A3だったセルはA2になってしまうの
で元A3であるA2の00は処理されないことになってしま
います。
という訳で、やはり後ろからやらないと駄目だと思い
ます。
Dim y As Long
For y = 20 To 2 Step -1
With Cells(y, 1)
If .Value = "00" Then
.EntireRow.Delete
End If
End With
Next
この回答への補足
End If でエラーが発生する件につきましては、私の記述誤りでした。
記述後に、きちんとデバッグすればよかったんですね。
大変に失礼致しました。
No.2
- 回答日時:
こんにちは
以下のページがご参考になるのでは?
【エクセル技道場】-マクロ-行の削除
http://www2.odn.ne.jp/excel/waza/macro.html#SEC6
参考URL:http://www2.odn.ne.jp/excel/waza/macro.html#SEC6
No.1
- 回答日時:
Selection.EntireRow.Deleteに問題があります。
選択されている行を削除しますから、A2のある2行目
が削除されてしまいます。
For Each セル In Range("A2:A20")
If セル = "00" Then
セル.EntireRow.Delete
End If
Next
こんな、感じでどうでしょう。
なお、社員台帳と言うことで、00の人が2回出てくる
ことはないと思いますが、連続で00が出てくると2つ
目の00は削除されませんので、ご注意ください。
(後ろから検査したほうがいいと思います。)
この回答への補足
arataさん、いろいろとありがとうございます。
実は、この2桁のコードは社員固有のIDではないのです。
(書き忘れてすいません)
と、いう訳で、00のコードを持つ社員が複数名おり、かつ連続して出てくる
可能性があります。
それから、End If の部分でエラーで落ちました。「End If に対する If がない」
というメッセージでした???
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Changeイベントで複数セルへの貼り付けおよび値削除時に1個目のセルのみエラーになる 3 2022/12/21 09:07
- Visual Basic(VBA) Excelにて、シート1の行を削除するとシート2のシート1と同じ番号の行も削除したい 3 2022/05/08 04:24
- Visual Basic(VBA) ExcelVBAのマクロについて。 9 2022/05/04 14:50
- Visual Basic(VBA) 【VBAエラー】Nextに対するForがありません 対策について 5 2022/11/21 21:26
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Excel(エクセル) エクセル VBA For Next 繰り返しの書き方を教えてください 6 2022/09/01 14:11
- Access(アクセス) ExcelのVBAコードについて教えてください。 4 2023/01/20 09:44
- Excel(エクセル) ハイパーリンクの削除について 2 2022/11/10 07:32
- Visual Basic(VBA) シート削除のマクロで「deleteメソッドは失敗しました」となります。助けてください! Sub 不要 6 2022/09/08 16:41
- その他(Microsoft Office) エクセルのマクロについて教えてください。 1 2022/06/09 09:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELで特定のセルに表示...
-
エクセル 数字をすべて○などの...
-
Excel内での検索結果をシート...
-
Excelで挿入した図をセルの中央...
-
現在のセルの位置を返す関数は...
-
エクセルでの検索ボックスの作...
-
クリックすると文章が表示され...
-
マクロを実行すると画像がズレ...
-
【EXCEL】先週の月曜日の日付を...
-
Excelでセルをクリックす...
-
太字に設定されているセルの個...
-
セルがクリックされた回数をカ...
-
Excelで、図形内の文字をセルに...
-
Excel ハイパーリンクのURLを別...
-
Excel2007 色のカウント (VBA)
-
エクセルマクロ 赤色の文字を検...
-
フォントの色を指定して削除出...
-
アポストロフィーの一括挿入 ...
-
エクセルグラフ数値軸の最大最...
-
セル背景や文字を点滅させる方法
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELで特定のセルに表示...
-
エクセル 数字をすべて○などの...
-
Excel内での検索結果をシート...
-
クリックすると文章が表示され...
-
Excelでセルをクリックす...
-
マクロを実行すると画像がズレ...
-
太字に設定されているセルの個...
-
Excelで、図形内の文字をセルに...
-
Excelで挿入した図をセルの中央...
-
フォントの色を指定して削除出...
-
Excel ハイパーリンクのURLを別...
-
エクセルでPDFリンクを大量...
-
エクセル 未入力セルがあると...
-
現在のセルの位置を返す関数は...
-
VBA 見つからなかった時の処理
-
EXCELのセルや文字色の反映
-
【EXCEL】先週の月曜日の日付を...
-
セルの値が変ると自動でマクロ...
-
エクセルでセルをダブルクリッ...
-
アポストロフィーの一括挿入 ...
おすすめ情報