Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
excel vba中两个日期之间的筛选_Vba_Excel_Filtering - Fatal编程技术网

excel vba中两个日期之间的筛选

excel vba中两个日期之间的筛选,vba,excel,filtering,Vba,Excel,Filtering,我需要帮助在两个日期之间进行筛选,但它给了我一个错误: 找不到命名参数 我的代码 Dim StartDate As String Dim EndDate As String ' StartDate = Date EndDate = Date + 365 ' ActiveSheet.AutoFilter Field:=7, Criteria1:=">=StartDate", Operator:=xlAnd, Criteria2:="<=EndDate" Dim StartDate作为

我需要帮助在两个日期之间进行筛选,但它给了我一个错误:

找不到命名参数

我的代码

Dim StartDate As String
Dim EndDate As String
'
StartDate = Date
EndDate = Date + 365
'
ActiveSheet.AutoFilter Field:=7, Criteria1:=">=StartDate", Operator:=xlAnd, Criteria2:="<=EndDate"
Dim StartDate作为字符串
Dim EndDate作为字符串
'
开始日期=日期
EndDate=日期+365
'

ActiveSheet.AutoFilter字段:=7,标准1:=“>=StartDate”,运算符:=xlAnd,标准2:=”如果您的日期是实际的
Date
值(即不是
String
看起来像日期的值),则执行以下操作:

Dim StartDate As Date
Dim EndDate As Date
StartDate = Date
EndDate = Date + 365
ActiveSheet.Range("A1:AO1").AutoFilter Field:=7, Criteria1:=">=" & CDbl(StartDate), Operator:=xlAnd, Criteria2:="<=" & CDbl(EndDate)
Dim StartDate作为日期
Dim EndDate作为日期
开始日期=日期
EndDate=日期+365

ActiveSheet.Range(“A1:AO1”).AutoFilter字段:=7,准则1:=“>=”&CDbl(StartDate),运算符:=xlAnd,准则2:=“如果您的日期是实际的
Date
值(即不是
String
看起来像日期的值),则按如下所示:

Dim StartDate As Date
Dim EndDate As Date
StartDate = Date
EndDate = Date + 365
ActiveSheet.Range("A1:AO1").AutoFilter Field:=7, Criteria1:=">=" & CDbl(StartDate), Operator:=xlAnd, Criteria2:="<=" & CDbl(EndDate)
Dim StartDate作为日期
Dim EndDate作为日期
开始日期=日期
EndDate=日期+365

ActiveSheet.Range(“A1:AO1”).AutoFilter字段:=7,标准1:=“>=”&CDbl(StartDate),运算符:=xlAnd,标准2:=”我在谷歌硬盘上发布了一个示例文件


我可以描述它的逻辑,但下载它、玩它、了解它的机制对你来说更容易。

我在我的谷歌硬盘上发布了一个示例文件


我可以描述逻辑,但下载、使用和查看它的机制更容易。

基本逻辑是问题所在……开始日期和结束日期逻辑混淆(应该是EndDate=date和StartDate=date-365)


很抱歉出现了这些问题!

问题出在基本逻辑上……开始日期和结束日期逻辑混淆(应该是EndDate=date和StartDate=date-365)



很抱歉出现了这些问题!

解决了错误,但由于今天的日期不在数据范围内,现在正在过滤掉所有数据。是否有纠正此错误的想法?请使用未发现错误的代码更新您的帖子,以及有关要过滤的数据的更多详细信息(它们位于哪些单元格中,等等)请参见以下内容:Dim StartDate作为字符串Dim EndDate作为字符串StartDate=Date EndDate=Date+365 ActiveSheet.Range(“A1:AO1”)。AutoFilter字段:=7,Criteria1:=“单元格可以位于G2到G10000000之间的任意位置,但它们始终位于GFI列中,以排除错误,但由于今天的日期不在数据范围内,现在正在过滤掉所有数据。关于更正此错误有何想法?请使用没有发现错误的代码更新您的帖子,以及有关要筛选的数据的更多详细信息(它们位于哪些单元格等)请参见以下内容:Dim StartDate As String Dim EndDate As String StartDate=Date EndDate=Date+365 ActiveSheet.Range(“A1:AO1”)。自动筛选字段:=7,准则1:=“单元格可以在G2到G10000000之间的任何位置,但它们始终在列中。Git仍然过滤掉所有日期。不过,根据您的反馈,我查看了格式,显示为“10/21/2016 12:12:26 PM”。这可能与问题有关吗?我的代码Dim StartDate作为字符串Dim EndDate作为字符串StartDate=日期EndDate=日期+365 ActiveSheet.Range(“A1:AO1”)。自动筛选字段:=7,标准1:=“Dim StartDate作为字符串Dim EndDate作为字符串'StartDate=日期EndDate=日期+365'ActiveSheet。自动筛选字段:=7,标准1:“>=StartDate”“,运算符:=xlAnd,准则2:=”你把事情搞砸了。用我的答案中的确切代码更新你的代码,并报告发生的情况。此外,你可以在列“G”中选择一个带有“日期”的单元格,1)说出你在公式栏中看到的内容2)在即时窗口中键入
?选择。数字格式
,按“返回”“并报告返回的值。它仍然过滤掉所有日期。不过,根据您的反馈,我查看了格式,显示为“10/21/2016 12:12:26 PM”。这可能与问题有关吗?我的代码Dim StartDate作为字符串Dim EndDate作为字符串StartDate=日期EndDate=日期+365 ActiveSheet.Range(“A1:AO1”)。自动筛选字段:=7,标准1:=“Dim StartDate作为字符串Dim EndDate作为字符串'StartDate=日期EndDate=日期+365'ActiveSheet。自动筛选字段:=7,标准1:“>=StartDate”“,运算符:=xlAnd,准则2:=”你把事情搞砸了。用我的答案中的确切代码更新你的代码,并报告发生的情况。此外,你可以在列“G”中选择一个带有“日期”的单元格,1)说出你在公式栏中看到的内容2)在即时窗口中键入
?选择。数字格式
,按“返回”“并报告返回值是多少