Excel 导入 导出 Microsoft
导出:
private void exportExcel()
{
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
Application.DoEvents();
Application.DoEvents();
this.gridControl1.ExportToXlsx(saveFileDialog1.FileName);
Application.DoEvents();
Microsoft.Office.Interop.Excel.Application appExcel = new Microsoft.Office.Interop.Excel.Application();
appExcel.DisplayAlerts = false;
//DisplayAlerts 属性设置成 False,就不会出现这种警告。
Microsoft.Office.Interop.Excel.Workbook workbook = appExcel.Workbooks.Open(saveFileDialog1.FileName,
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing);//打开Excel Microsoft.Office.Interop.Excel.Sheets sheets = workbook.Worksheets;//实例表格
Microsoft.Office.Interop.Excel.Worksheet worksheet = (Microsoft.Office.Interop.Excel.Worksheet)sheets[1];//第一个表格
worksheet.Columns["A", Type.Missing].ColumnWidth = 14;
worksheet.Columns["B", Type.Missing].ColumnWidth = 5;
worksheet.Columns["C", Type.Missing].ColumnWidth = 12;
worksheet.Columns["D", Type.Missing].ColumnWidth = 10;
worksheet.Columns["E", Type.Missing].ColumnWidth = 12;
worksheet.Columns["F", Type.Missing].ColumnWidth = 16;
worksheet.Columns["G", Type.Missing].ColumnWidth = 18;
worksheet.Columns["H", Type.Missing].ColumnWidth = 7;
worksheet.Columns["I", Type.Missing].ColumnWidth = 7;
worksheet.Columns["J", Type.Missing].ColumnWidth = 7;
worksheet.Columns["K", Type.Missing].ColumnWidth = 7;
worksheet.Columns["L", Type.Missing].ColumnWidth = 10;
worksheet.Columns["M", Type.Missing].ColumnWidth = 7; worksheet.Columns["N", Type.Missing].ColumnWidth = 7;
worksheet.Columns["O", Type.Missing].ColumnWidth = 5;
worksheet.Columns["P", Type.Missing].ColumnWidth = 5;
worksheet.Columns["Q", Type.Missing].ColumnWidth = 12;
worksheet.Columns["R", Type.Missing].ColumnWidth = 12;
worksheet.Columns["S", Type.Missing].ColumnWidth = 5;
worksheet.Columns["T", Type.Missing].ColumnWidth = 5;
worksheet.Columns["U", Type.Missing].ColumnWidth = 5;
worksheet.Columns["V", Type.Missing].ColumnWidth = 5;
worksheet.Columns["W", Type.Missing].ColumnWidth = 10;
worksheet.Columns["X", Type.Missing].ColumnWidth = 10;
worksheet.Columns["Y", Type.Missing].ColumnWidth = 10;
worksheet.Columns["Z", Type.Missing].ColumnWidth = 8;
worksheet.Columns["AA", Type.Missing].ColumnWidth = 10;
worksheet.Columns["AB", Type.Missing].ColumnWidth = 8;
worksheet.Columns["AC", Type.Missing].ColumnWidth = 10;
worksheet.Columns["AD", Type.Missing].ColumnWidth = 8;
worksheet.Columns["AE", Type.Missing].ColumnWidth = 8;
worksheet.Columns["AF", Type.Missing].ColumnWidth = 12;
worksheet.Columns["AG", Type.Missing].ColumnWidth = 15; /// worksheet.Cells[9,"A"].value ="asd";
// Microsoft.Office.Interop.Excel.Range firstColumn = worksheet.get_Range("A1");
//Range firstColumn = (Range)xlWorkSheet.Columns[0];
// firstColumn.EntireColumn.AutoFit(); workbook.Save();
workbook.Close();
appExcel.Quit();
appExcel = null;
GC.Collect(); }
}
2014-10-1814:07:48
导入:
private void Btn_Open_Click(object sender, EventArgs e)
{
OpenFileDialog dlg = new OpenFileDialog();
dlg.Filter = "Excel文件|*.xlsx;*.xls";
if (dlg.ShowDialog() == DialogResult.OK)
{
this.TXT_FileName.Text = dlg.FileName;
Excel.Application xlApp = new Excel.Application();
try
{
Excel.Workbook workbook = xlApp.Workbooks.Open(dlg.FileName, , false, , "", "", false, Excel.XlPlatform.xlWindows, "", true, false, , true, , );
int n = workbook.Worksheets.Count;
CB_Sheet.Items.Clear();
for (int i = ; i < n; i++)
{
CB_Sheet.Items.Add(((Excel.Worksheet)workbook.Worksheets[i + ]).Name);
}
preqexcel(dlg.FileName);
}
finally
{
xlApp.Workbooks.Close();
xlApp.Quit();
xlApp = null;
GC.Collect();
this.overpricerowindex.Clear();
}
}
}
private void preqexcel(string path)
{
string strConn ="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" +
path + ";Extended Properties=\"Excel 12.0;HDR=YES\"";
OleDbConnection conn = new OleDbConnection(strConn);
try
{
conn.Open();
}
catch (Exception error)
{
MessageBox.Show("Microsoft.ACE.OLEDB.12.0驱动程序丢失或损坏,请重新安装ODBC驱动!", "温馨提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
string strExcel = "";
OleDbDataAdapter myCommand = null;
DataSet ds = null;
strExcel = string.Format( "select * from [{0}$]",this.CB_Sheet.Text);
myCommand = new OleDbDataAdapter(strExcel, strConn);
ds = new DataSet();
myCommand.Fill(ds);
this.gridView1.Columns.Clear();
this.gridControl1.DataSource = ds.Tables[];
conn.Close();
this.gridView1.HorzScrollVisibility = DevExpress.XtraGrid.Views.Base.ScrollVisibility.Always;
this.gridView1.VertScrollVisibility = DevExpress.XtraGrid.Views.Base.ScrollVisibility.Always;
foreach (DevExpress.XtraGrid.Columns.GridColumn gcol in this.gridView1.Columns)
{
gcol.MinWidth = ;
}
}
Excel 导入 导出 Microsoft的更多相关文章
- ASP.NET 之 常用类、方法的超级总结,并包含动态的EXCEL导入导出功能,奉上类库源码
实用类:UtilityClass 包含如下方法 判断对象是否为空或NULL,如果是空或NULL返回true,否则返回false 验证手机号是否正确 13,15,18 验证邮箱 验证网址 MD5加密,返 ...
- Excel导入导出帮助类
/// <summary> /// Excel导入导出帮助类 /// 记得引入 NPOI /// 下载地址 http://npoi.codeplex.com/rele ...
- Mego(04) - NET简单实现EXCEL导入导出
前言 相信做过信息系统的朋友都会遇到EXCEL导入导出的相关开发,做过不少EXCEL导入导出后总结起来大致有如下几种方式实现: ADO.NET的OldDb或ODBC连接EXCEL使用DataTable ...
- Java之POI的excel导入导出
一.Apache POI是一种流行的API,它允许程序员使用Java程序创建,修改和显示MS Office文件.这由Apache软件基金会开发使用Java分布式设计或修改Microsoft Offic ...
- Java Excel 导入导出(一)
本文主要描述通过java实现Excel导入导出 一.读写Excel三种常用方式 1.JXL——Java Excel开放源码项目:读取,创建,更新 2.POI——Apache POI ,提供API给Ja ...
- SpringBoot集成文件 - 集成POI之Excel导入导出
Apache POI 是用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给Java程序对Microsoft Office格式档案读和写的功能.本文主要介绍通过Spr ...
- 利用反射实现通用的excel导入导出
如果一个项目中存在多种信息的导入导出,为了简化代码,就需要用反射实现通用的excel导入导出 实例代码如下: 1.创建一个 Book类,并编写set和get方法 package com.bean; p ...
- Excel导入导出的业务进化场景及组件化的设计方案(上)
1:前言 看过我文章的网友们都知道,通常前言都是我用来打酱油扯点闲情的. 自从写了上面一篇文章之后,领导就找我谈话了,怕我有什么想不开. 所以上一篇的(下)篇,目前先不出来了,哪天我异地二次回忆的时候 ...
- 关于Excel导入导出的用例设计
目前,为方便操作,很多系统都会增加批量导入导出的功能.文件导入导出一般格式都是excel.由于用户直接在excel在填写内容,无法控制填写的格 式,加上excel解析比较困难,所以一般涉及到excel ...
随机推荐
- java抽象类
Java 抽象类 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类. 抽象类除了不 ...
- XSS攻击
什么是XSS? http://www.cnblogs.com/bangerlee/archive/2013/04/06/3002142.html XSS攻击及防御? http://blog.csdn. ...
- python - socket - client端指定ip和端口
问题描述: 在设备中有3个NI, ip分别为192.168.1.5/6/7.其中本端192.168.1.6同对端192.168.1.10建立了一个tunnel. 我希望测试tunnel连通性, 对端起 ...
- 关于thinkphp开发的几种规范(仅限个人)
一.只要设计到where查询语句,无论是增删改查 $cn['username'] = session('member.username'); $cn['itemid'] = $itemid; $ite ...
- MyBatis实现关联表查询
一.一对一关联 1.1.提出需求 根据班级id查询班级信息(带老师的信息) 1.2.创建表和数据 创建一张教师表和班级表,这里我们假设一个老师只负责教一个班,那么老师和班级之间的关系就是一种一对一的关 ...
- python学习道路(day12note)(mysql操作,python链接mysql,redis)
1,针对mysql操作 SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass'); 设置密码 update user set password ...
- MyBatis学习总结(二)——使用MyBatis对表执行CRUD操作(转载)
本文转载自:http://www.cnblogs.com/jpf-java/p/6013540.html 上一篇博文MyBatis学习总结(一)--MyBatis快速入门中我们讲了如何使用Mybati ...
- easyui datagrid 编辑模式详解
一,建立编辑器 从api得知,扩展一种新的编辑器类型,需要提供以上几个方法.项目中正好需要一个checkbox 类型编辑器,但在easyui中并没提供这样的编辑器,那我们可以通过扩展编辑器来解决 ...
- java 操作Excel表 创建 查看 修改
需要用到jxl.jar包 修改有两种方法一种是jxl的 另一种需要apache.poi包 package excelChuLi; import java.io.File; import java. ...
- 给Source Insight做个外挂系列之六--“TabSiPlus”的其它问题
关于如何做一个Source Insight外挂插件的全过程都已经写完了,这么一点东西拖了一年的时间才写完,足以说明我是一个很懒的人,如果不是很多朋友的关心和督促,恐怕是难以完成了.许多朋友希望顺着本文 ...