小编Mim*_*rok的帖子

如何在 net.core 3.1 中连接打开的 Excel 应用程序?

在 Net.Framework 中,我可以使用下一个函数来操作 Excel 应用程序的打开实例:

using Excel = Microsoft.Office.Interop.Excel;
public static Excel.Workbook GetOpenedExcelWorkbook(string workBookName)
{
    Excel.Application xlsApp = null;
    try { xlsApp = (Excel.Application)Marshal.GetActiveObject("Excel.Application"); }
    catch { return null; }

    foreach (Excel.Workbook wb in xlsApp.Workbooks)
    {
        if (wb.Name == workBookName)
            return wb;
    }
    return null;
}
Run Code Online (Sandbox Code Playgroud)

它很方便,因为用户只需单击 Excel 工作表中的按钮即可调用所有必要的程序。而且我可以用C#编写操作excel的代码,这比VBA更有用、更强大。VBA 中的下一个代码用于通过单击 excel 中的按钮来调用 C# 控制台应用程序。它在活动 Excel 文件附近找到适当的 exe 文件,并通过 VBA 中的 Shell 命令和必要的参数调用它。

Sub Button1_Click()
    Call ExeCaller("ConsoleApp.exe", "Button1_action_arg")
End Sub


Sub ExeCaller(ExeName As String, Optional cmd As String = "")
    Dim …
Run Code Online (Sandbox Code Playgroud)

c# excel

5
推荐指数
1
解决办法
1780
查看次数

标签 统计

c# ×1

excel ×1