需要添加一个if语句来控制我在代码中循环的内容,所以从这一行开始:
If Application.WorksheetFunction.Or(checkrange.value = 0, checkrange.value = "") = "False" Then
我已将checkrange定义为以下
Set checkrange = finwb.Sheets("Strt_Dash_Final").Range(Cells((cfcll.Row + 1), q), Cells((cfcll.Row + (cfcll.value - 2)), q))
我的代码在工作表功能行上停止,运行时错误13,类型不匹配。该判断的目的是检查范围是否仅包含0或空格。公式OR(A1:A5 = 0,A1:A5 ="")在excel中工作正常,所以我假设它不接受我当前形式的范围(注意:我试图删除。来自checkrange.value的值,但这也不起作用)
对此的任何帮助,一如既往,非常感谢!
编辑:我Dim checkrange As range
将其定义为范围
答案 0 :(得分:1)
无需在$sql="SELECT leave_dates from employee_leaves WHERE employee_leave_employee_id='24'";
$query= mysql_query($sql);
$input="08/04/2016, 08/02/2016,08/16/2016";
$input_array=explode(",", $he);
//$count=count($ha);
while($rc=mysql_fetch_array($query))
{
$dates=$rc['leave_dates'];
$dat=explode(",", $dates);
$result = array_merge(array_diff($dat, $input_array), array_diff($input_array, $dat));
echo $result[1];
}
中使用WorksheetFunction
。
If statement
因为您检查If checkrange.value = 0 Or checkrange.value = "" Then
而不是Range
,您必须使用Cell
或CountA
这是CountIf
的一个例子:
CountA
答案 1 :(得分:1)
您需要两个单独的COUNTIF语句:
If Application.WorksheetFunction.Countif(checkrange, "0") + Application.WorksheetFunction.Countif(checkrange, "") = 0 Then
答案 2 :(得分:0)
我想它应该是
If Application.WorksheetFunction.Or(checkrange.value = 0, checkrange.value = "") = False Then
虽然没有必要在这里使用工作表功能。试一试,让我们看看会发生什么。
答案 3 :(得分:0)
数组公式OR(A1:A5 = 0,A1:A5 = "")
检查范围中任何(1个或更多)的单元格是0还是""。检查范围中的任何单元格是否不 0或""然后你可以使用这个
If WorksheetFunction.CountIfs(checkrange, "<>0", checkrange, "<>") > 0 Then