いつも大変お世話になっております。
エクセルのデータベースで、社員名簿を作りました。
名前、住所、職階級など、様々なデータが横1列に入力してあります。
入力しているシート名は「名簿」です。
H列に、社員、契約社員、派遣、パート、退職 といった情報を入れています。
この中で、 退職 とある人の分の情報を別シート(シート名 退職者 )に移して、削除したいのです。
今までは手作業でしておりましたが、これを自動でする方法はないでしょうか?
「名簿」シートで削除したものが、「退職者」シートの一番上、もしくは一番下にどんどん追加されるようにしたいのです。
どうぞよろしくお願いします。
No.5ベストアンサー
- 回答日時:
No.1です。
こんなマクロでどうでしょう。Sheets("名簿").Select
名簿最大 = Cells(65536, 1).End(xlUp).Row
For i = 2 To 名簿最大
If Cells(i, 8) = "退職" Then
Range(Cells(i, 1), Cells(i, 8)).Copy
Rows(i).Delete Shift:=xlUp
Sheets("退職者").Select
退職者最大 = Cells(65536, 1).End(xlUp).Row
Cells(退職者最大 + 1, 1).Select
ActiveSheet.Paste
i = i - 1
End If
Sheets("名簿").Select
名簿最大 = Cells(65536, 1).End(xlUp).Row
Next
No.4
- 回答日時:
Sub Macro1()
'
' Macro7 Macro
' マクロ記録日 : 2006/5/9 ユーザー名 : @@@@@
'
' Keyboard Shortcut: Ctrl+q
'
ActiveCell.Range("A1:H1").Select
Selection.Cut
Sheets("Sheet2").Select
Range("A1").Select
Selection.Insert Shift:=xlDown
Sheets("Sheet1").Select
ActiveCell.Rows("1:1").EntireRow.Select
Selection.Delete Shift:=xlUp
End Sub
--------------
これは、マクロの自動記録(新しいマクロの記録)で出来た物を一部改造した物です
Sheet1 のカーソルの有る行のデータを、Sheet2の一番上の行に挿入し、Sheet1の元のデータを行削除します
これでかなり自動化できると思います
さらに、#3さんのオートフィルターを併用すればもっと省力化できます
(データーはA列~H列と仮定しています)
No.2
- 回答日時:
こういうのは1つ1つ人手でやるのがエクセルの建前です。
>されるようにしたいのです。
VBAを勉強してください。勉強をしないで、「したいのです」といっても、それでは他人に作らせるより他ない。
関数を知っている程度ではできません。
行を削除はできません。行の非表示もできません。
関数は抜き出しは得意ではない。私のOKWAVEの回答の中に「imogasi方式」というのを、沢山載せてます。これは作業列を使いますが、退職サインを立てた人を別シートにもってこれます。しかし全セル式で構成といったものになります。
また削除・別シート追加には、VBAで処理をする必要がありますが、キッカケを指示するコマンドボタンなど使う方法があるでしょう。
また本質問はアクセスなどに適した問題です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Changeイベントで複数セルへの貼り付けおよび値削除時に1個目のセルのみエラーになる 3 2022/12/21 09:07
- Excel(エクセル) 【エクセル」 特定のセルで条件抽出した列を、別シートに上から詰めて表示したい。 8 2022/04/08 16:00
- Excel(エクセル) エクセルで沢山のレコードの最後に追記するには? 7 2023/04/10 13:27
- Visual Basic(VBA) エクセルについて教えてください。 3 2023/06/28 09:11
- Visual Basic(VBA) エクセルのマクロで対象ごとにシート分けしてその内容をセルに書き込みたい 9 2022/08/24 13:23
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/01/25 11:42
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- ハッキング・フィッシング詐欺 ネット検索で出る自分の名前を削除したい 3 2022/05/07 13:44
- Excel(エクセル) エクセルの複数ブックのシートを1つまとめたい 都道府県ごとに47ブックがあり、そのシートのデータを1 5 2022/11/15 14:57
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
複数シートからデータを拾って...
-
Excelでシートの違うデータでグ...
-
エクセルファイルのシート毎の容量
-
シート削除して同名シート追加...
-
Excelで日付変更ごとに、自動的...
-
excelの不要な行の削除ができな...
-
エクセルのカメラ機能について
-
EXCELで2つのファイルから重複...
-
Excelマクロ 差分抽出の方法が...
-
エクセル マクロ "特定の日付...
-
トランジスタの選び方
-
Excel 売上管理シートに入力し...
-
VBAで CTRL+HOMEの位置へ移動...
-
エクセルVBAで、特定文字から始...
-
【エクセル」 特定のセルで条件...
-
別々のシートの表をピボットテ...
-
VBA フィルターで抽出したデー...
-
エクセルで複数の条件を抽出し...
-
Googleスプレッドシートフィル...
-
ファンモータが作動しない。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルファイルのシート毎の容量
-
複数シートからデータを拾って...
-
Excelでシートの違うデータでグ...
-
シート削除して同名シート追加...
-
excelの不要な行の削除ができな...
-
Excelで日付変更ごとに、自動的...
-
VBAで CTRL+HOMEの位置へ移動...
-
トランジスタの選び方
-
EXCELで2つのファイルから重複...
-
EXCEL 複数行のデータを1行にま...
-
他のシートの一番下の行データ...
-
オートフィルタで抽出したデー...
-
エクセルのカメラ機能について
-
(VBAにて)日付でデータを抽出す...
-
エクセルで名簿を50音で切り分ける
-
別々のシートの表をピボットテ...
-
Excel 売上管理シートに入力し...
-
Excelマクロ 差分抽出の方法が...
-
EXCEL の表を一行ずつシートに...
-
エクセルVBAで、特定文字から始...
おすすめ情報