我正在使用C#创建一个Excel插件。
如何检查所选内容(或代码中表示范围的单元格)是否在特定范围内。例如,如何检查单元格$P$5是否在范围$A$1:$Z$10内。
使用Application.Intersect
,在VBA中可以这样写:
Sub TestIntersect()
Dim MyRange As Range
Dim TestRange As Range
Set TestRange = [$A$1:$Z$10]
Set MyRange = [P5]
If Not Application.Intersect(MyRange, TestRange) Is Nothing Then
Debug.Print "the ranges intersect"
End If
End Sub
根据被接受的答案,我正在添加C#版本(如问题中所请求):
var myRange = Application.Range["$P$5"];
var testRange = Application.Range["$A$1:$Z$10"];
if (Application.Intersect(myRange, testRange) != null)
{
// do something
}