No.2ベストアンサー
- 回答日時:
No1です。
以下のマクロを標準モジュールへ登録してください。----------------------------------------
Public Sub データコピー()
Dim sh1 As Worksheet
Dim sh2 As Worksheet
Dim sh3 As Worksheet
Dim dicT As Object
Dim maxrow1 As Long
Dim maxrow2 As Long
Dim okctr As Long
Dim ngctr As Long
Dim row As Long
Dim row3 As Long
Dim key As String
Set sh1 = Worksheets("data")
Set sh2 = Worksheets("名簿")
Set sh3 = Worksheets("結果")
Set dicT = CreateObject("Scripting.Dictionary")
maxrow1 = sh1.Cells(Rows.Count, "C").End(xlUp).row
maxrow2 = sh2.Cells(Rows.Count, "B").End(xlUp).row
Application.ScreenUpdating = False
For row = 2 To maxrow2
key = sh2.Cells(row, "B").Value
dicT(key) = sh2.Cells(row, "C").Value
Next
okctr = 0
ngctr = 0
row3 = 2
sh3.Cells.Clear
sh1.Rows(1).Copy sh3.Rows(1)
For row = 2 To maxrow1
key = sh1.Cells(row, "C").Value
If dicT.exists(key) = True Then
sh1.Rows(row).Copy sh3.Rows(row3)
okctr = okctr + 1
row3 = row3 + 1
Else
ngctr = ngctr + 1
End If
Next
Application.ScreenUpdating = True
MsgBox ("処理件数=" & okctr & " 未処理件数=" & ngctr)
End Sub
------------------------------------------
No.1
- 回答日時:
1)シート1、シート2、シート3の具体的なシート名はどうなってますか。
2)シート1、シート2、シート3の1行目は見出し行ですか。
3)提示された情報でわかるのは、添付の図の情報だけです。
添付の図のように具体的なセル位置の情報を提示していただけませんでしょうか。
tatsu99さん、返信ありがとうございます。
(1)シート名1は"data",シート名2は"名簿",シート名3は"結果"です。(2)1行目はすべて見出し行にしたいです。
(3)シート1"data"はA列からM列まであり、行は2万行ぐらいあります。
シート2"名簿"はB列社員番号、C列氏名、D列所属で300行ぐらいあり
ます。
ご教示よろしくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの複数シートの保護を...
-
エクセルVBAでパスの¥マークに...
-
特定のシートの削除を禁止した...
-
複数シートの色付きセルがある...
-
Excelで金銭出納帳。繰越残高を...
-
エクセルで前シートを参照して...
-
VBAでシートコピー後、シート名...
-
前の(左隣の)シートを連続参...
-
EXCEL:同じセルへどんどん足し...
-
Excelで同じシートのコピーを一...
-
シート名ではなく、相対位置で...
-
シートを追加・名前を次月に変...
-
Accessのスプレッドシートエク...
-
Excel、同じフォルダ内のExcel...
-
エクセルのシート名をリスト化...
-
複数シートの特定の位置に連番...
-
Excelのシートを、まとめて表示...
-
エクセル 計算式も入っていない...
-
excelでシート毎の最終更新日を...
-
シートの保護のあとセルの列、...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルの複数シートの保護を...
-
別シート参照のセルをシート毎...
-
エクセルVBAでパスの¥マークに...
-
Excelで金銭出納帳。繰越残高を...
-
Excelで同じシートのコピーを一...
-
Excelのシートを、まとめて表示...
-
エクセルでファイルを開いたと...
-
Accessのスプレッドシートエク...
-
前の(左隣の)シートを連続参...
-
VBAでシートコピー後、シート名...
-
EXCEL:同じセルへどんどん足し...
-
EXCELで同一フォーマットのシー...
-
シートの保護のあとセルの列、...
-
EXCELで1ヶ月分の連続した日付...
-
エクセルで複数設定したハイパーリンク先...
-
複数シートの特定の位置に連番...
-
エクセルでファイル保存時に複...
-
特定のシートの削除を禁止した...
-
エクセルで前シートを参照して...
-
Excel、同じフォルダ内のExcel...
おすすめ情報