Sub ボタン4_Click()
'高速化
Application.Calculation = xlManual
Application.ScreenUpdating = False
Dim i As Integer
Dim day As Date
Dim day2 As Date
Dim day3 As Date
Dim day4 As Date
Dim day5 As Date
Dim day6 As Date
Dim day7 As Date
Dim work As String
Dim WB As String
WB = ActiveWorkbook.Name
'i = "エクセルの検索開始行"
i = 6
work = "【作業予定】"
day = Date
day2 = DateAdd("d", 1, day)
day3 = DateAdd("d", 2, day)
day4 = DateAdd("d", 3, day)
day5 = DateAdd("d", 4, day)
day6 = DateAdd("d", 5, day)
day7 = DateAdd("d", 6, day)
'テスト用
'Workbooks.Open "テスト対象のエクセルのフルパス", ReadOnly:=True
'本番
Workbooks.Open "本番のエクセルのフルパス", ReadOnly:=True
Workbooks("開いたファイル名").Activate
Do While Cells(i, 3) <> ""
If InStr(Cells(i, 8), day) > 0 Or InStr(Cells(i, 8), day2) > 0 Or InStr(Cells(i, 8), day3) > 0 Or InStr(Cells(i, 8), day4) > 0 Or InStr(Cells(i, 8), day5) > 0 _
Or InStr(Cells(i, 8), day6) > 0 Or InStr(Cells(i, 8), day7) > 0 Then
If InStr(Cells(i, 14), "抽出したい文字列") > 0 Then
work = work & vbCrLf & Left(Cells(i, 8), Len(Cells(i, 8)) - 3) & " " & Cells(i, 3)
End If
End If
i = i + 1
Loop
Workbooks("開いたファイル名").Close
Workbooks(WB).Activate
If work <> "【作業予定】" Then
MsgBox (work)
Else
MsgBox (day & " から " & day7 & " の作業はありません")
End If
End Sub
コメント