繁体   English   中英

在 Web 应用程序中打开 excel 文件

[英]Open excel file in web application

如何在 Web 应用程序中打开 excel 文件,我想打开 excel 文件并允许用户编辑和保存,就像在 MS Office 中一样。 我正在尝试在 .net 的 Web 应用程序中打开文档文件。 我可以打开和显示pdf文件,我也想让用户能够打开和编辑excel和word文件作为办公体验

首先,必须将 Excel 程序集添加到项目中。 为此,您必须通过转到 Project -> Add Reference 菜单项来添加对 Microsoft.Office.Interop.Excel 库的引用。 转到弹出的对话框的 .NET 选项卡并向下滚动 Microsoft.Office.Interop.Excel 列表项。 双击它,然后按确定。 这会添加对您项目的引用。 在代码的“使用”部分中,键入

using Excel = Microsoft.Office.Interop.Excel; 

将程序集添加到项目后,需要创建一个新应用程序:

Excel.Application excelApp = new Excel.Application();

如果要使 Excel 对用户可见,则必须将 Visible 属性设置为 true,默认值为 false。

excelApp.Visible = true;

上面的代码打开 Excel 应用程序,为了使用该应用程序,您必须通过创建一个 Workbook 对象来打开一个工作簿。 您可以使用以下代码打开一个新的空白工作簿:

Excel.Workbook newWorkbook = excelApp.Workbooks.Add();

前面的代码打开一个带有一张工作表的空白工作簿。 .Add 方法可选地接受一个模板对象。 如果参数留空,将使用默认模板(例如手动打开 Excel 时)。

如果要打开现有文档进行编辑而不是创建新文档,可以使用以下代码打开 Workbook 对象:

   string workbookPath = "c:/SomeWorkBook.xls";
   Excel.Workbook excelWorkbook = excelApp.Workbooks.Open(workbookPath,
    0, false, 5, "", "", false, Excel.XlPlatform.xlWindows, "",
    true, false, 0, true, false, false);

前面的代码可能需要一点解释。 workbookPath 当然是您要打开的现有电子表格的路径,如果使用 .NET 4.0 和 Office 2007 库(Microsoft.Office.Interop.Excel 库),它是唯一需要的参数。 excelApp.Workbooks.open 参数的其余部分不太明显。 以下是传递给函数的参数列表:

WorkBooks.open(string Filename, object UpdateLinks, object ReadOnly, object Format, 
object Password, object WriteResPassword, object ReadOnlyRecommend, object Origin, 
object Delimiter, object Editable, object Notify, object Converter, object AddToMru, 
object Local, object CorruptLoad )

要查看有关此功能的文档,请点击 Microsoft 网站的链接以进一步了解该功能: 在此处输入链接描述

创建或打开工作簿后,您必须创建一个 Sheets 对象来保存工作簿中的工作表。 以下代码将获取您之前打开的工作簿中的所有工作表。

Excel.Sheets excelSheets = excelWorkbook.Worksheets;

现在您有了 Worksheets 的集合,您必须在其中获取一个单独的工作表编辑数据。

string currentSheet = "Sheet1";
Excel.Worksheet excelWorksheet = (Excel.Worksheet)excelSheets.get_Item(currentSheet);

在前面的代码中,您必须键入强制转换 excelSheets.get_Item(string) 方法,因为它返回一个对象。 现在您有了工作表,您可以使用以下代码访问单个单元格:

     Excel.Range excelCell = 
    (Excel.Range)excelWorksheet.get_Range("A1", "A1");

get_Range 函数必须采用两个参数。 如果两个参数相等,则选择单个单元格; 否则将选择一系列单元格。 同样,您必须键入转换方法的返回值。 拥有单元格对象后,您可以使用 .Value2 属性设置其值,或使用任何其他属性来操作单元格范围。

首先使用 Excel 表的嵌入代码,您必须在 One Drive 上上传您的 excel 表,然后嵌入它,代码将提供给您并使用 iframe 标记并粘贴,然后您将在 html 页面中查看您的 excel 表。 例子:

        <iframe width="402" height="346" frameborder="0" scrolling="no"
            src="https://onedrive.live.com/embed?resid=9A8DF70E172ABC38%21114&authkey=%21AAWX1h4bOSMBGY4&em=2&AllowTyping=True&ActiveCell='EventBudget-Seminar'!A1&wdHideGridlines=True&wdHideHeaders=True&wdDownloadButton=True&wdInConfigurator=True&wdInConfigurator=True&edesNext=false&ejss=false"></iframe>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM