获取处于运行中的Excel、Word对象的完整攻略如下:
获取Excel对象
- 引入COM组件库:
csharp
using System.Runtime.InteropServices;
- 获取进程中Excel对象:
csharp
// 获取Excel进程
object objExcel = Marshal.GetActiveObject("Excel.Application");
// 将com对象转化为Excel.Application对象
Excel.Application excelApp = (Excel.Application)objExcel;
- 使用Excel.Application对象进行进一步操作:
csharp
// 获取当前工作簿
Excel.Workbook workbook = excelApp.ActiveWorkbook;
// 获取当前工作表
Excel.Worksheet worksheet = excelApp.ActiveSheet;
// 读取单元格内容
string value = worksheet.Range["A1"].Value.ToString();
示例代码:
```csharp
using Excel = Microsoft.Office.Interop.Excel;
using System.Runtime.InteropServices;
// 获取Excel对象
object objExcel = Marshal.GetActiveObject("Excel.Application");
Excel.Application excelApp = (Excel.Application)objExcel;
// 获取当前工作簿和工作表
Excel.Workbook workbook = excelApp.ActiveWorkbook;
Excel.Worksheet worksheet = excelApp.ActiveSheet;
// 读取单元格内容
string value = worksheet.Range["A1"].Value.ToString();
```
获取Word对象
- 引入COM组件库:
csharp
using System.Runtime.InteropServices;
- 获取进程中Word对象:
csharp
// 获取Word进程
object objWord = Marshal.GetActiveObject("Word.Application");
// 将com对象转化为Word.Application对象
Word.Application wordApp = (Word.Application)objWord;
- 使用Word.Application对象进行进一步操作:
csharp
// 获取当前活动文档
Word.Document document = wordApp.ActiveDocument;
// 读取文档内容
string value = document.Content.Text;
示例代码:
```csharp
using Word = Microsoft.Office.Interop.Word;
using System.Runtime.InteropServices;
// 获取Word对象
object objWord = Marshal.GetActiveObject("Word.Application");
Word.Application wordApp = (Word.Application)objWord;
// 获取当前文档
Word.Document document = wordApp.ActiveDocument;
// 读取文档内容
string value = document.Content.Text;
```
注意:获取Excel、Word对象时需要保证相应软件在运行中,获取到的对象才是有效的。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C# 如何获取处于运行中的Excel、Word对象 - Python技术站