# 获取指定范围的交集、并集和偏移

## Content

GcExcelJava允许您使用IRange接口获取指定范围的交集、并集和偏移。
要获得两个或多个范围的交集和并集，可以分别使用IRange接口的 intersect 方法和 union 方法。类似地，该接口还提供了获取指定范围的偏移量的 offset 方法。
下面的示例代码展示了如何获取不同范围的交集、并集和偏移：

![](https://gccndocumentsitestorage.blob.core.chinacloudapi.cn/document-site-files/images/f122ea44-24a9-4d7e-86a7-35e2be63ee1e/intersection.png)

```Java
// Set the intersection of two range value and style.
IRange intersectRange = worksheet.getRange("A2:E6").intersect(worksheet.getRange("C4:G8"));
intersectRange.getInterior().setColor(Color.FromArgb(56, 93, 171));
intersectRange.merge();
intersectRange.setValue("Intersect Range");
intersectRange.getFont().setBold(true);
intersectRange.getFont().setColor(Color.FromArgb(226, 231, 243));
intersectRange.setHorizontalAlignment(HorizontalAlignment.Center);
intersectRange.setVerticalAlignment(VerticalAlignment.Center);
```

![](https://gccndocumentsitestorage.blob.core.chinacloudapi.cn/document-site-files/images/f122ea44-24a9-4d7e-86a7-35e2be63ee1e/union.png)

```Java
// Set the union of two range value and font style.
IRange unionRange = worksheet.getRange("A11:D13").union(worksheet.getRange("D14:G16"));
unionRange.setValue("Union Range");
unionRange.getFont().setBold(true);
unionRange.getFont().setColor(Color.FromArgb(226, 231, 243));
```

![](https://gccndocumentsitestorage.blob.core.chinacloudapi.cn/document-site-files/images/f122ea44-24a9-4d7e-86a7-35e2be63ee1e/offset.png)

```Java
// Set the offset of the range value and style.
IRange offsetRange = worksheet.getRange("B2:D4").offset(4, 4);
offsetRange.merge();
offsetRange.setValue("Offset Range");
offsetRange.getFont().setBold(true);
offsetRange.getFont().setColor(Color.FromArgb(226, 231, 243));
offsetRange.getInterior().setColor(Color.FromArgb(56, 93, 171));
offsetRange.setHorizontalAlignment(HorizontalAlignment.Center);
offsetRange.setVerticalAlignment(VerticalAlignment.Center);
```

> **注意：** 如果指定了不同工作表中的一个或多个范围，或者 offset 方法中的偏移量超出范围，则引发异常。

要查看代码详情，请参见[交集和并集](https://demo.grapecity.com.cn/documents-api-excel-java/demos/rangeintersectandunion)以及[偏移量](https://demo.grapecity.com.cn/documents-api-excel-java/demos/rangeoffset)的演示示例。