Sub IMPORT_MSG()
Dim strMonth As String
Dim strSheet As String
strSheet = ActiveSheet.Name
strMonth = Format(Date, ("mmmm" & "_yy"))
If strSheet < strMonth Then
MsgBox "test1"
ElseIf strSheet >= strMonth Then
MsgBox "test2"
End if
End sub
我每月有12张名字,如(March_15,April_15),依此类推。我已经制作了这段代码来检查活动工作表是否在本月之前弹出一个messge1,以便显示message2。 问题是它不能正常工作。我得到的结果如下: 如果message1,March_15会给message2 April_15给message1(正常) 5月15日,9月15日,oktomber_15&amp; 11月15日给出message2(正常) 6月15日,7月15日,8月15日&amp;如果message2
,则December_15会给message1答案 0 :(得分:1)
试试这个
Sub IMPORT_MSG()
Dim Dt$, i&: i = 1
Dim Dic As Object: Set Dic = CreateObject("Scripting.Dictionary")
Dic.CompareMode = vbTextCompare
While i <= 12
Dic.Add MonthName(i), i: i = i + 1
Wend
Dt = Left(ActiveSheet.Name, WorksheetFunction.Search("_", ActiveSheet.Name) - 1)
If Dic(Dt) < Month(Date) Then
MsgBox "test1"
Else
MsgBox "test2"
End If
End Sub