1

我需要打开一个没有新书的 excel 应用程序。可能吗?这是我的代码:

public static Excel.Application InitializeTemplateExcelApp(string logFile)
{
            Excel.Application app = null;

            try
            {
                app = new Excel.Application();
                app.Visible = true;
                // reload all previously loaded addins

                foreach (Excel.AddIn ai in app.AddIns)
                {
                    if (ai.Installed != false)
                    {
                        ai.Installed = false;
                        ai.Installed = true;

                        app.Wait(30);
                    }
                }

                return app;
            }
            catch (Exception ex)
            {
                string errMessage = ex.Message.ToString();
                File.AppendAllText(logFile, errMessage);
                return null;
            }

        }

问题是当我初始化 excel 应用程序时,会自动创建新的工作簿。之后我需要打开我自己的工作簿,它已经成为第二个打开的工作簿,我想避免这种情况。

谢谢你的帮助,

伊利亚

4

3 回答 3

0

在将应用程序设置为可见之前尝试运行此命令

app.ActiveWorkbook.Close(false);
app.visible = true;

这应该在向用户显示任何内容之前关闭活动工作簿。

于 2012-06-13T17:39:53.707 回答
0

我相信 Excel 会使用默认模板打开工作簿。只需在打开自己的工作簿之前关闭所有打开的工作簿。

于 2012-06-13T15:47:16.363 回答
0

您的另一个选择是excel.exe从命令行参数开始。

http://office.microsoft.com/en-us/excel-help/command-line-switches-for-excel-HA010158030.aspx#BM4

于 2012-06-13T16:14:49.707 回答