C# 控制 WPS 打开新的工作簿与原有工作簿共用RTD服务
时间: 2023-12-02 21:17:31 浏览: 131
可以使用 Microsoft.Office.Interop.Excel 库来实现在 C# 中控制 WPS 打开新的工作簿,并与原有工作簿共用 RTD 服务的功能。具体步骤如下:
1. 引用 Microsoft.Office.Interop.Excel 库。
2. 创建 Excel.Application 对象,并打开原有工作簿:
```
Excel.Application excelApp = new Excel.Application();
Excel.Workbook workbook = excelApp.Workbooks.Open("原有工作簿路径");
```
3. 使用 Add 方法创建新的工作簿,并将其加入到 Workbooks 集合中:
```
Excel.Workbook newWorkbook = excelApp.Workbooks.Add();
excelApp.Workbooks.Add(newWorkbook);
```
4. 在新的工作簿中打开“数据”选项卡,选择“从其他源”中的“RTD(实时数据)”,并将 RTD 服务器绑定到新的工作簿。
```
Excel.Worksheet worksheet = newWorkbook.ActiveSheet;
Excel.Range range = worksheet.Range["A1"];
range.Select();
Excel.RTD rtd = excelApp.WorksheetFunction.RTD("RTDServer.RTDServer", "", "RTDTopic");
range.Formula = "=rtd(\"RTDServer.RTDServer\",,\"RTDTopic\")";
```
5. 保存并关闭新的工作簿:
```
newWorkbook.SaveAs("新的工作簿路径");
newWorkbook.Close();
```
6. 关闭原有工作簿并退出 Excel 应用程序:
```
workbook.Close();
excelApp.Quit();
```
这样就可以在 C# 中控制 WPS 打开新的工作簿,并与原有工作簿共用 RTD 服务了。
阅读全文