###for文の中にforをいれてそこが完結したら、次へ行きたい
お世話になります。
Zが元の参照したいExcelファイルで、Tがもう一方のcsvファイルです。
1行目の値→数の分だけTを回す。
2行名の値→数の分だけTを回す。
としたいのですが、毎回Next Zまで回ってしまいます。
If文の中にNext Zを入れるとコンパイルエラーになってしまいます。
VBA
1For Z = 1 To Worksheets("Sheet1").Cells(Rows.count, "A").End(xlUp).Row '送信者リストの行数 2 3 For T = 2 To csv.Worksheets(SheetName).Cells(Z, Columns.count).End(xlToLeft).Column 'DBリストの横の列数 4 On Error Resume Next 5 6 Mail = WorksheetFunction.VLookup(Wb.Worksheets("Sheet1").Cells(Z, "A"), csv.Worksheets(SheetName).Cells(), T, False) 7 8 On Error GoTo 0 'リストからHITしない場合ERRORを出さない 9 10 If Mail <> "" Then 'HITした場合 11 12 If Wb.Worksheets("Sheet1").Cells(Z, "B").Value = "" Then 'B列が空白の場合 13 14 Wb.Worksheets("Sheet1").Cells(Z, "B").Value = Mail 15 16 Else 17 18 Wb.Worksheets("Sheet1").Cells(Z, "B").Value = Wb.Worksheets("Sheet1").Cells(Z, "B").Value & "," & Mail 19 20 End If 21 22 Else 'HITしなかった場合 23 24 T = 2 25 26 End If 27 28 Next T 29 30Next Z
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。