zoukankan      html  css  js  c++  java
  • VB.NET 快速向Excel写入大量数据

    把数据以字符串的形式保存,不同列之前以Tab符隔开,不同行之间用回车换行符号:

    思路是把所有数据在内存中以字符串的形式写入到WINDOWS的粘贴板中,然后一次性粘贴到Excel中。

    先添加引用“Microsoft.Office.Interop.Excel”

    '先添加引用“Microsoft.Office.Interop.Excel”
    
    Private Sub SaveToXls(StrData As String, StrFileName As String)
           If String.IsNullOrEmpty(StrData) Or String.IsNullOrEmpty(StrFileName) Then
               Return
           Else
               Dim xlApp As Microsoft.Office.Interop.Excel.Application = New Microsoft.Office.Interop.Excel.Application
               If IsNothing(xlApp) Then
                   MessageBox.Show("无法创建Excel对象,可能您的系统未安装Excel")
               End If
               xlApp.DefaultFilePath = ""
               xlApp.DisplayAlerts = True
               xlApp.SheetsInNewWorkbook = 1
               Dim xlBook As Microsoft.Office.Interop.Excel.Workbook = xlApp.Workbooks.Add(True)
               Dim xlSheet As Microsoft.Office.Interop.Excel.Worksheet = xlBook.Worksheets.Add()
               System.Windows.Forms.Clipboard.SetDataObject(StrData)
               xlSheet.Paste()
               xlBook.SaveAs(StrFileName, Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookNormal,
                       Type.Missing, Type.Missing, Type.Missing, Type.Missing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlExclusive,
                       Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing)
     
               '以下代码是结束Excel进程在系统中的占用,否则只用close和Quit,.NET框架并不能实时结束Excel进程。
               xlBook.Close()
               System.Runtime.InteropServices.Marshal.ReleaseComObject(xlSheet)
               System.Runtime.InteropServices.Marshal.ReleaseComObject(xlBook)
               xlSheet = Nothing
               xlBook = Nothing
               xlApp.Quit()
               System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApp)
               xlApp = Nothing
               GC.Collect()
           End If
       End Sub
  • 相关阅读:
    verilog BRAM 读写
    verilog 语法一 led 翻转
    面试 遇到 问题
    S32K144+UJA1169 (四 ) S32K144 SPI1 功能初始化
    S32K144+UJA1169 ( 三 ) S32K144 SPI1 功能初始化
    S32K144+UJA1169 ( 二 ) S32K144 SPI1 对应的引脚 初始化 为 SPI 功能
    S32K144+UJA1169 ( 一 ) 连接框架+1169 功能 说明
    编译 xboot
    make clean make[1]:sdl2-config:命令未找到
    lwip 内存配置和使用,以及 如何 计算 lwip 使用了多少内存?
  • 原文地址:https://www.cnblogs.com/jmpep/p/4486282.html
Copyright © 2011-2022 走看看