`
aaron_ch
  • 浏览: 175901 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

VB.NET Operate Excel

    博客分类:
  • .NET
阅读更多
Private   Sub   DataTransferExcel(ByVal   tempDataTable   As   DataTable,   ByVal   strSaveFilePath   As   String)  
   
                  Dim   xlApp   As   Excel.Application  
                  Dim   xlBook   As   Excel.Workbook  
                  Dim   xlSheet   As   Excel.Worksheet  
   
                  Dim   rowIndex,   colIndex   As   Integer  
                  rowIndex   =   1  
                  colIndex   =   0  
   
                  Dim   Col   As   DataColumn  
                  Dim   Row   As   DataRow  
   
                  Dim   DialogResultObj   As   DialogResult  
   
                  Try  
                          xlApp   =   CType(CreateObject("Excel.Application"),   Excel.Application)  
                          xlBook   =   CType(xlApp.Workbooks.Add,   Excel.Workbook)  
                          xlSheet   =   CType(xlBook.Worksheets(1),   Excel.Worksheet)  
                  Catch   ex   As   Exception  
                          MessageBox.Show(ex.Message,   "错误信息",   MessageBoxButtons.OK,   MessageBoxIcon.Error)  
                          Exit   Sub  
                  End   Try  
   
                  For   Each   Col   In   tempDataTable.Columns  
                          colIndex   =   colIndex   +   1  
                          xlApp.Cells(1,   colIndex)   =   Col.ColumnName  
                  Next  
   
   
                  For   Each   Row   In   tempDataTable.Rows  
                          rowIndex   =   rowIndex   +   1  
                          colIndex   =   0  
                          For   Each   Col   In   tempDataTable.Columns  
                                  colIndex   =   colIndex   +   1  
                                  xlApp.Cells(rowIndex,   colIndex)   =   Row(Col.ColumnName)  
                          Next  
                  Next  
   
                  xlApp.Visible   =   False  
                  Try  
                          xlBook.Saved   =   True  
                          xlSheet.SaveAs(strSaveFilePath)  
                          xlApp.UserControl   =   False  
   
                          xlSheet   =   Nothing  
                          xlApp.DisplayAlerts   =   False  
                          xlBook.RunAutoMacros(Excel.XlRunAutoMacro.xlAutoClose)  
                          xlBook.Close()  
                          xlBook   =   Nothing  
                          xlApp.Quit()  
                          xlApp.DisplayAlerts   =   True  
                          xlApp   =   Nothing  
                          GC.Collect()  
   
                          DialogResultObj   =   MessageBox.Show("导出文件成功,是否打开该文件!",   "提示信息",   MessageBoxButtons.OKCancel,   MessageBoxIcon.Information)  
                          If   DialogResultObj   =   DialogResult.OK   Then  
                                  'Dim   ProPath   As   String  
                                  ''Dim   tempInt   As   Integer  
   
                                  ''tempInt   =   AppFilePath.Length  
   
   
                                  'ProPath   =   AppFilePath   &   "Excel.exe"  
                                  ''Shell(ProPath   &   strSaveFilePath,   AppWinStyle.MaximizedFocus)  
   
                                  ''Shell("C:\Program   Files\Microsoft   Office\Office\Excel.exe   "   &   strSaveFilePath)  
   
                                  'Shell("ProPath   "   &   strSaveFilePath)  
                                //本来我是想用shell命令的,但是shell大家用的不多,而且路径Excel.exe难得指定。  
                                  Dim   xlAppOpen   As   Excel.Application  
   
                                  Try  
                                          xlAppOpen   =   CType(CreateObject("Excel.Application"),   Excel.Application)  
                                          xlAppOpen.Workbooks.Open(strSaveFilePath)  
                                  Catch   ex   As   Exception  
                                          MessageBox.Show(ex.Message,   "错误信息",   MessageBoxButtons.OK,   MessageBoxIcon.Error)  
                                          Exit   Sub  
                                  End   Try  
   
                                  xlAppOpen.Visible   =   True  
   
                          End   If  
                  Catch   ex1   As   Exception  
                          MessageBox.Show("导出文件失败!"   &   vbCrLf   &   ex1.Message,   "错误信息",   MessageBoxButtons.OK,   MessageBoxIcon.Error)  
                  Finally  
                          'xlSheet   =   Nothing  
                          'xlApp.DisplayAlerts   =   False  
                          'xlBook.RunAutoMacros(Excel.XlRunAutoMacro.xlAutoClose)  
                          'xlBook.Close()  
                          'xlBook   =   Nothing  
                          'xlApp.Quit()  
                          'xlApp.DisplayAlerts   =   True  
                          'xlApp   =   Nothing  
                          'GC.Collect()  
                  End   Try  
          End   Sub
分享到:
评论

相关推荐

    VB.NET 操作Word 改进版

    在VB.NET中操作Microsoft Word是一项常见的任务,尤其在自动化办公文档处理时。下面将详细介绍如何使用VB.NET来实现描述中的各项功能。 1. **新建文档**: 在VB.NET中,我们可以利用`Microsoft.Office.Interop....

    using ado.net to operate excel

    ADO.NET是微软.NET框架的一部分,主要用于数据库操作,但其实它也可以用来处理非关系型数据,如Excel文件。本文将深入探讨如何使用ADO.NET来操作Excel,以实现数据的读取、写入和修改。 首先,我们需要理解ADO.NET...

    Operate_Excel.zip

    NPOI开发包C#读取Excel ,解决引用 NPOI.OOXML.dll报错的问题 npoi出现“System.InvalidOperationException”类型的未经处理的异常在 NPOI.OOXML.dll 中发

    C++ 读写Excel以及操作SQLite

    2、OperateExcel工程: 该工程是C++工程主要是为了便于后续在C++项目中广泛的使用NPOI库进行操作Excel的二次封装; 3、OperateSQL工程: 该工程是C++操作数据库的简单封装,主要是对数据库的基本操作,涉及有...

    C++操作Excel2003的完整类

    本篇文章将详细讲解如何使用C++操作Excel2003,主要基于提供的"OperateExcel.cpp"和"OperateExcel.h"这两个文件。 首先,"OperateExcel.cpp"和"OperateExcel.h"构成了一个C++类,该类可能包含了操作Excel2003的工作...

    操作Excel文档,筛选,查询的数据,过滤重复的数据。

    - `OperateExcel`:这可能是项目的主程序文件,比如一个编译后的.NET程序,用于执行Excel操作。 综上所述,Excel的筛选、查询和去重功能是数据管理的重要工具。结合编程实现自动化操作,如通过`OperateExcel.sln`...

    Excel operate

    【Excel操作】在IT行业中,Excel是一款广泛使用的电子表格软件,尤其在数据分析、报表制作以及数据处理方面具有强大的功能。这段代码是关于如何在C#编程环境中操作Excel的一个实例,展示了如何利用Microsoft.Office....

    基于Aspose.Cell的Excel导入与导出 程序源码

    Aspose.Cell是一款强大的.NET库,专门用于处理Microsoft Excel文件,无需依赖Microsoft Office。在这个基于Aspose.Cell的项目中,我们看到的"基于Aspose.Cell的Excel导入与导出程序源码"显然涉及到如何在Windows ...

    excelVB操作

    在Excel中,VB(Visual Basic for Applications)是一种强大的编程工具,可以用来自动化各种任务,包括处理和合并大量的Excel文件。本教程将详细讲解如何利用VB技术实现根据特定字段合并多个Excel文件到一个单一的...

    ASP.NET 微软培训

    XML Web services enable you to build and operate Web services that deliver software as a service. XML Web services are today’s best-of-breed business integration since they allow customer centricity ...

    NPOI读写Excel和第三方dll读写CSV文件

    在`OperateExcel.cs`这个源代码文件中,很可能封装了使用NPOI进行Excel文件操作的方法,例如创建新的工作簿、添加工作表、填充数据、设置样式等。你可以直接调用这些方法,无需深入了解NPOI的底层实现,极大地提高了...

    camunda-operate-1.0.0.zip

    【camunda-operate-1.0.0.zip】是一个与Zeebe相关的压缩包,它提供了Zeebe的安装和快速入门指南。Zeebe是一个分布式工作流引擎,用于处理大规模的业务流程自动化任务。这个压缩包包含了部署Zeebe所需的所有组件,...

    从零开始学Excel.VBA

    Excel VBA综合实例篇通过人事管理系统和Operate System考试系统综合讲述了Excel VBA的运用,使读者能够全面了解Excel VBA的使用方法。  本书在各个知识点的讲解过程中列举了丰富的实验内容,同时在每节中安排习题与...

    VS2010下利用C++实现对Excel的编程

    void OperateExcel() { CApplicaton excelApp; if (excelApp.CreateDispatch(_T("Excel.Application")) == NULL) { AfxMessageBox(_T("Failed to create Excel application instance")); return; } excelApp...

    Cryptography in .NET Succinctly(SyncFusion,2015)

    With the advent of modern computing, cryptography now tends to operate on raw data and is used to protect our communication channels, email messages, web browsing, financial transactions, and much ...

    VB Socket 异步通信框架代码.rar

    VB Socket 异步通信框架代码,'数据包的长度  Public Const SFJ_Pro_SegmentLength As Integer = 1024  '数据包的数据长度部分占字节位数  Public Const SFJ_Pro_Packet_DataLen_Byte_Num As Integer = 8  '...

    Excel基本操作

    在Excel中进行基本操作是每个数据处理人员必备的技能,无论是初学者还是专业人士,掌握这些基础知识都能极...在“OperateExcel”这个文件中,可能包含了关于这些操作的详细步骤和实例,建议仔细学习以加深理解和实践。

    OperateDataBase.cs数据库连接公共类

    OperateDataBase.cs数据库连接公共类 ,初学者可以用来练习。

    .NET中STAThread的使用详解

    在.NET框架中,`STAThread`是一个重要的概念,尤其在开发Windows桌面应用程序时。`STAThread`代表单线程公寓(Single-Threaded Apartment),这是一种线程模型,用于管理线程与Windows消息循环的交互。本文将深入...

    asp.net中常用到的类和方法(v 1.2)

    --------------调用javascript的类 Log----------------------写系统日志类 OperateFile--------------文件操作的类 OperateDataBase----------数据库备份/还原的类 SortTip------------------排序提示...

Global site tag (gtag.js) - Google Analytics