Ada*_*m H 10 c# excel excel-dna
我一直在用C#编写一个应用程序,它在Excel电子表格中创建自定义文档属性,我有一个函数,它接收一个工作簿对象......
但是,实际上获取当前的Workbook对象是非常烦人的,我使用ExcelDNA来添加功能,但是,我似乎无法将我的函数传递给有效的Workbook COM对象.
JMa*_*Max 16
如果您需要查找activeworkbook C#,如果您使用的是Office Interop,则可以尝试以下类型的代码:
(Workbook)Globals.ThisAddIn.Application.ActiveWorkbook;
Run Code Online (Sandbox Code Playgroud)
[ 来源 ]
Rus*_*ari 15
这是我目前正在做的方式,似乎工作得很好
using Excel = Microsoft.Office.Interop.Excel;
Run Code Online (Sandbox Code Playgroud)
然后你得到活跃的工作簿
//Gets Excel and gets Activeworkbook and worksheet
Excel.Application oXL;
Excel.Workbook oWB;
Excel.Worksheet oSheet;
oXL = (Excel.Application)Marshal.GetActiveObject("Excel.Application");
oXL.Visible = true;
oWB = (Excel.Workbook)oXL.ActiveWorkbook;
docProps = oWB.CustomDocumentProperties
Run Code Online (Sandbox Code Playgroud)
然后我会尝试你所拥有的,看看它是如何工作的
希望这可以帮助
正如@Govert在上述评论中所解释的:
using Excel = Microsoft.Office.Interop.Excel;
using ExcelDna.Integration;
// Get the correct application instance
Excel.Application xlapp = (Excel.Application)ExcelDnaUtil.Application;
// Get active workbook
Excel.Workbook wbook = xlapp.ActiveWorkbook;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
24551 次 |
| 最近记录: |