2016-07-28 22 views
1

我想查看表格中的记录,看看有多少已经包含今天的Julian日期。我希望它是通配符搜索,因为我的项目编号将采用这种格式“16-2101”。朱利安日期在中间(210)。在Access中使用VBA如何使用Dcount来计算包含此公式的记录数 - DatePart(“y”,Now)?

我的代码是:

Private Sub AddProjectNum_Click() 

    TwoDigitYear = Mid$(CStr(DatePart("yyyy", Now)), 3, 2) 
    dayOfyear = DatePart("y", Now) 
    CountofProjectsToday = DCount("[ProjectNumber]", "Table1", "[ProjectNumber] Like '*dayOfyear*'") 

    If CountofProjectsToday = 0 Then 
     Me.ProjectNum.Value = TwoDigitYear & "-" & dayOfyear & 1 
    Else 
     Me.ProjectNum.Value = TwoDigitYear & "-" & dayOfyear & CountofProjectsToday + 1 
    End If 

End Sub 

如果我输入的地方实际的公历日期(210)“DAYOFYEAR”代码工作。它不喜欢参考,我不知道如何绕过它。

回答

1

尝试

CountofProjectsToday = DCount("[ProjectNumber]", "Table1", "[ProjectNumber] Like '*" & CStr(dayOfyear) & "*'") 
'                     ^^^^^^^^^^^^^^^^^^^^^^^ 

那你的VBA dayOfYear转换成(使用CStr)的字符串,然后粘贴结果字符串到你的查询(& ... &)。

+0

太简单了。我以为我试过在CStr()之前包装它,但它没有工作,但这次它做到了。谢谢! –

相关问题