首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用Process.Start在C#中打开Excel文件

使用Process.Start在C#中打开Excel文件
EN

Stack Overflow用户
提问于 2016-12-01 22:49:38
回答 2查看 11.1K关注 0票数 4

我正在试着用点击按钮打开一个excel文件。但由于某些原因,它不起作用。我试过几种方法。你知道为什么它们不工作吗?

方法1我已经尝试过了。这将打开文件管理器,但不会打开正确的文件。它肯定使用了指向文件的正确路径,并且该文件确实存在

代码语言:javascript
运行
复制
private string fileCopy;

public RepairResultsControl()
{
    InitializeComponent();
}

public void Show(PSRepair.AnalysisResults analysis, string pathNameCopy)
{
    fileCopy = pathNameCopy;
    Show();
}

private void btnGoToFile_Click(object sender, EventArgs e)
{
    Process.Start("explorer.exe", "/select,"+ fileCopy);
}

方法2.这没有打开任何东西,不确定原因

代码语言:javascript
运行
复制
System.Diagnostics.Process.Start(@"C:\Users\username\Documents\newTest.xlsx");
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-12-02 00:19:58

通常,Process.Start(@"C:\Users\username\Documents\newTest.xlsx");会在Excel中打开您的文档。

但是,您在注释中表示,您是从后台运行的Excel外接程序执行此操作的。解决方案需要考虑到这一点(代码示例假设您有VSTO外接程序,否则您需要进行相应的调整):

代码语言:javascript
运行
复制
// make the running Excel instance visible
Globals.ThisAddIn.Application.Visible = true;

// open the workbook using Excel interop
Globals.ThisAddIn.Application.Workbooks.Open(fileName);
票数 9
EN

Stack Overflow用户

发布于 2016-12-02 00:06:33

  1. 尝试以管理员身份运行
  2. 检查异常,同时启动方法应该返回一个布尔值,检查以确保它是真的。
  3. 确保您的xlsx文件与Excel相关联(在命令提示符下进行轻松检查,键入您的文件名,然后按enter...如果excel打开,则表示您工作正常)
  4. 检查系统错误日志。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40913603

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档