我正在试着转换一些VBA C#的代码。我是C#的新手。目前,我正在尝试打开文件夹中的Excel文件,如果该文件不存在,则创建它。我正在尝试下面这样的东西。我怎么才能让它工作呢?
Excel.Application objexcel;
Excel.Workbook wbexcel;
bool wbexists;
Excel.Worksheet objsht;
Excel.Range objrange;
objexcel = new Excel.Application();
if (Directory("C:\\csharp\\error report1.xls") = "")
{
wbexcel.NewSheet();
}
else
{
wbexcel.Open("C:\\csharp\\error report1.xls");
objsht = ("sheet1");
}
objsht.Activate();
发布于 2009-01-21 15:07:07
您需要安装Microsoft Visual Studio Tools for Office (VSTO)。
可以在Visual Studio安装程序中的工作负载> Web & Cloud > Office/SharePoint开发下选择VSTO。
之后,创建一个通用的.NET项目并添加对Microsoft.Office.Interop.Excel通过'Add Reference... > Assemblies‘对话框。
Application excel = new Application();
Workbook wb = excel.Workbooks.Open(path);
Missing.Value是一个特殊的反射结构,用于替换不必要的参数。
在较新的版本中,所需的程序集引用称为Microsoft Excel 16.0 Object Library..。如果您没有安装最新版本,您可能已经安装了
Microsoft Excel 15.0 Object Library,或更早的版本,但包含的过程是相同的。
发布于 2011-10-19 05:49:31
FileInfo fi = new FileInfo("C:\\test\\report.xlsx");
if(fi.Exists)
{
System.Diagnostics.Process.Start(@"C:\test\report.xlsx");
}
else
{
//file doesn't exist
}
发布于 2014-01-29 01:45:05
private void btnChoose2_Click(object sender, EventArgs e)
{
OpenFileDialog openfileDialog1 = new OpenFileDialog();
if (openfileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
this.btnChoose2.Text = openfileDialog1.FileName;
String filename = DialogResult.ToString();
var excelApp = new Excel.Application();
excelApp.Visible = true;
excelApp.Workbooks.Open(btnChoose2.Text);
}
}
https://stackoverflow.com/questions/464902
复制相似问题