質問編集履歴

1

コード漏れのため、追加しました

2018/10/19 03:10

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -56,11 +56,113 @@
56
56
 
57
57
 
58
58
 
59
- ```ここに言語名を入力
59
+ Sub 訪問企業()
60
60
 
61
- ソースコード
61
+ Dim wbRead As Workbook
62
62
 
63
+ Dim wbOut As Workbook
64
+
65
+ Dim shtRead As Worksheet
66
+
67
+ Dim shtOut As Worksheet
68
+
69
+
70
+
71
+ Set wbRead = ActiveWorkbook
72
+
73
+ Set wbOut = Workbooks("集計.xlsm")
74
+
75
+ Set shtRead = wbOut.Worksheets("全体")
76
+
77
+ Set shtOut = wbOut.Worksheets("訪問")
78
+
79
+
80
+
81
+ Dim rng As Range
82
+
83
+ Dim lastRow As Long
84
+
85
+
86
+
87
+ '現在のブック内にあるすべてのシートをループ処理
88
+
89
+ For Each shtRead In wbRead.Worksheets
90
+
91
+ '対象シート内のH列先頭からH列最終データ行までをループ処理
92
+
93
+ For Each rng In shtRead.Range(shtRead.Cells(8, 1), shtRead.Cells(shtRead.Rows.Count, 1).End(xlUp))
94
+
95
+ 'H列が「訪問」なら、
96
+
97
+ If shtRead.Cells(rng.Row, 8) = "訪問" Then
98
+
99
+ '読込シートから行コピー
100
+
101
+ shtRead.Rows(rng.Row).Copy
102
+
103
+
104
+
105
+ 'A~J列全体から、重複データを探して、選択する。
106
+
107
+ Dim KENSAKU As Variant
108
+
109
+ KENSAKU = shtRead.Range("A1:J63000")
110
+
111
+ Dim FoundCell As Range
112
+
113
+ Set FoundCell = shtOut.Range("A:J").Find(What:=KENSAKU, LookAt:=xlWhole)
114
+
115
+
116
+
117
+ '【重複ない場合】空白の行に内容を転記
118
+
119
+ If FoundCell Is Nothing Then
120
+
121
+ 'DBブックを選択し、一番下の行番号を取得
122
+
123
+ lastRow = shtOut.Cells(Rows.Count, 1).End(xlUp).Row + 1
124
+
125
+ '出力シートに値で貼り付け
126
+
127
+ shtOut.Rows(lastRow).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
128
+
129
+ :=False, Transpose:=False
130
+
131
+
132
+
133
+ '【重複ある場合】同じ検索用の内容の行に上書きする
134
+
63
- ```
135
+ Else
136
+
137
+ 'その行に貼付け
138
+
139
+ shtOut.Rows(FoundCell.Row).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
140
+
141
+ :=False, Transpose:=False
142
+
143
+
144
+
145
+ End If
146
+
147
+ End If
148
+
149
+ Next rng
150
+
151
+ Next shtRead
152
+
153
+
154
+
155
+ Application.CutCopyMode = True
156
+
157
+ ActiveCell.Select
158
+
159
+
160
+
161
+
162
+
163
+ End Sub
164
+
165
+
64
166
 
65
167
 
66
168