【发布时间】:2018-09-13 10:04:59
【问题描述】:
如何结合这些想法?
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
string name = "Sheet1";
string extension = Path.GetExtension(openFileDialog1.FileName);
using (System.Data.OleDb.OleDbConnection con = new System.Data.OleDb.OleDbConnection())
{
switch (extension)
{
case ".xls" :
string xlsconStr = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source='" + openFileDialog1.FileName + "'; Extended Properties=Excel 8.0;";
con.ConnectionString = xlsconStr;
break;
case ".xlsx":
string xlsxconStr = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source='" + openFileDialog1.FileName + "'; Extended Properties=Excel 12.0;";
con.ConnectionString = xlsxconStr;
break;
}
using (System.Data.OleDb.OleDbCommand oconn = new System.Data.OleDb.OleDbCommand("SELECT * FROM [" + name + "$]", con))
{
con.Open();
System.Data.OleDb.OleDbDataAdapter adapter = new System.Data.OleDb.OleDbDataAdapter(oconn);
DataTable data = new DataTable();
adapter.Fill(data);
dataGridView1.DataSource = data;
}
}
还有这个
Excel.Application myExcelApp = new Excel.Application();
Excel.Workbooks myExcelWorkbooks;
Excel.Workbook myExcelWorkbook;
myExcelApp.Visible = false;
myExcelWorkbooks = myExcelApp.Workbooks;
string fileName = Convert.ToString("C:\\Users\\ProgrammerPC1\\Desktop\\DLAV FILES\\ACSAD.xls");
myExcelWorkbook = myExcelWorkbooks.Open(fileName);
Excel.Worksheet myExcelWorksheet = (Excel.Worksheet)myExcelWorkbook.ActiveSheet;
//myExcelWorksheet.Select(Type.Missing);
foreach(Worksheet worksheet in myExcelWorkbook.Worksheets)
{
listBox1.Items.Add(worksheet.Name);
}
我的想法是删除 dataGridView,当我点击按钮(导入)时,它会显示 openFileDialog > 选择 Excel 文件 >在 listView 中,excel 文件的所有 SHEETS 都将在列表中。
【问题讨论】:
-
如果是c#,为什么要标记
vb.net?