细胞上的价值:
K12 = 0,
K13 = 0 ,
K14 = K13+K12
哪个K14显示为#DIV/0!
如果K14上的值大于7,将弹出MsgBox 但由于值为#DIV / 0!,VBA不起作用。
Sheets("Passdown Format").Select
Range("K14").Select
If Range("K14").Value > 7 Then
MsgBox "More than 7"
Else
End If
答案 0 :(得分:1)
K14显示#DIV / 0 !,因为K12和K13不是数字,而是字符串。将它们更改为数字(即删除逗号?),您的代码就可以了。
return [
'providers' => [
'core_http' => 'Application\Example\HttpServiceProvider'
]
]
答案 1 :(得分:1)
如果K14报告#DIV / 0!然后在工作表上的某个地方(而不是在代码中)有一些涉及除以0的东西。
正如测试一样,我创建了一个电子表格,在K12中放0,在K13中放0,并在K14中生成这两个的总和;按照你的例子。我得到了0。
因此,问题出现在工作表上,而不是代码中。
如果您希望代码提供对错误的响应,那么iserr()将执行此操作,但我觉得这不是您想去的地方。
编辑:我没有假设逗号是在K12或K13中,正如另一个答案所暗示的那样,但如果它们是正确的那么它们是完全正确的;然后,单元格将包含文本而不是数字,并会生成您的错误。答案 2 :(得分:1)
在VBA代码中,您可以检查单元格是否包含数值:
import { Component, OnInit } from '@angular/core';
import { Router, RoutesRecognized } from '@angular/router';
import { filter, pairwise } from 'rxjs/operators';
export class AppComponent implements OnInit {
constructor (
public router: Router
) {
}
ngOnInit() {
this.router.events
.pipe(filter((e: any) => e instanceof RoutesRecognized),
pairwise()
).subscribe((e: any) => {
console.log(e[0].urlAfterRedirects); // previous url
});
}
如果单元格包含" DIV / 0",通过检查单元格的内容是否为数字,它将不再遇到类型不匹配错误。