回答編集履歴

2

コード追記

2020/09/22 00:51

投稿

hatena19
hatena19

スコア33759

test CHANGED
@@ -15,3 +15,81 @@
15
15
 
16
16
 
17
17
  [【ExcelVBA入門】MATCH関数を使ったセル範囲を検索する方法を徹底解説! | 侍エンジニア塾ブログ(Samurai Blog) - プログラミング入門者向けサイト](https://www.sejuku.net/blog/68671)
18
+
19
+
20
+
21
+
22
+
23
+ ---
24
+
25
+ +を付けてくれた人のために、
26
+
27
+ MATCH関数を使った場合のコード例
28
+
29
+
30
+
31
+ ```vba
32
+
33
+ Public Sub sample1()
34
+
35
+ '前略
36
+
37
+ With wsAcq
38
+
39
+ Dim LastRow As Long
40
+
41
+ LastRow = .Cells(.Rows.Count, 2).End(xlUp).Row
42
+
43
+ Dim TargetRow As Long
44
+
45
+ TargetRow = 1
46
+
47
+
48
+
49
+ Dim MatchRow As Long
50
+
51
+ MatchRow = 1
52
+
53
+
54
+
55
+ Do
56
+
57
+ With Application
58
+
59
+ MatchRow = .IfError(.Match("No", .Range("B" & TargetRow & ":B" & LastRow), 0), 0)
60
+
61
+ End With
62
+
63
+ TargetRow = TargetRow + MatchRow - 2
64
+
65
+ If MatchRow <> 0 Then
66
+
67
+ Dim 開発 As String
68
+
69
+ 開発 = .Cells(TargetRow, 2).Value
70
+
71
+
72
+
73
+ '転記処理省略
74
+
75
+
76
+
77
+
78
+
79
+ End If
80
+
81
+ TargetRow = TargetRow + 3
82
+
83
+ Loop Until MatchRow = 0
84
+
85
+
86
+
87
+ End With
88
+
89
+
90
+
91
+ '後略
92
+
93
+ End Sub
94
+
95
+ ```

1

参考リンク追記

2020/09/22 00:51

投稿

hatena19
hatena19

スコア33759

test CHANGED
@@ -11,3 +11,7 @@
11
11
 
12
12
 
13
13
  あるいは、Match関数で検索してもいいでしょう。(こちらの方かさらに高速。)
14
+
15
+
16
+
17
+ [【ExcelVBA入門】MATCH関数を使ったセル範囲を検索する方法を徹底解説! | 侍エンジニア塾ブログ(Samurai Blog) - プログラミング入門者向けサイト](https://www.sejuku.net/blog/68671)