c# - CS0117 Form1 不包含应用程序的定义。(Windows 工作室 2019)
问题描述
我正在尝试关闭 Excel 工作簿,但我得到 CS0117 错误“类型”不包含“应用程序”上的“标识符”的定义我使用的代码在“btnExcelClose_Click”中如下所示
private void btnExcelClose_Click(object sender, EventArgs e)
{
//Set the file name
object fileName = "FoodPantry.xlsx";
//Get the file
Excel.Workbook workbook = Form1.Application.Workbooks.get_Item(fileName);
//Close the workbook
workbook.Close(false);
}
private void btExcelOpen_Click(object sender, EventArgs e)
{
// Get fully qualified path for xlsx file
string excelWB = (@"C:\Users\User-123\Documents\Food Pantry\Working Backups\FoodPantry.xlsx");
var exApp = new Microsoft.Office.Interop.Excel.Application();
var exWbk = exApp.Workbooks.Open(excelWB);
exApp.Visible = true;
}
解决方案
试试这个:将 exApp 声明为 Form 的全局变量。
Microsoft.Office.Interop.Excel.Application exApp;
private void btExcelOpen_Click(object sender, EventArgs e)
{
// Get fully qualified path for xlsx file
string excelWB = (@"D:\sts_device.xlsx");
exApp = new Microsoft.Office.Interop.Excel.Application();
var exWbk = exApp.Workbooks.Open(excelWB);
exApp.Visible = true;
}
private void btnExcelClose_Click(object sender, EventArgs e)
{
exApp.Workbooks.Close();
}
推荐阅读
- flutter - 颤振如何从定位的堆栈中删除默认填充
- excel - Excel VBA 中的应用程序定义或对象定义的错误 1004 与 .End(x1Up) .row 范围声明不一致
- python - 将 excel 文件导入 openpxl 工作簿 - Python
- sql - sql server中的列分为子列
- vue.js - 如何限制 v-autocomplete 中下拉结果的数量?
- header - 我怎样才能得到 \rhead 优越于顶部和 \chead 下来?
- rust - 在 bluepill 开发板上使用 stm32f1xx_hal 对 GPIO 输出进行外设初始化
- sql - Doctrine: 双方非 PK 属性上的多对多映射
- c++ - 从文件中读取扩展的 ascii 字符
- c# - 从.net 5 web api返回图像作为url