自動出口到Microsoft Excel的DataTable

今天,我想表明,一直擔任我很長一段時間,但我仍然使用它的例子。
出口到Excel完整的DataTable的列或行的數量,我們做出了榜樣。

可能有許多方法可以做到這一點,但我覺得真正有用的,因為這種方法對任何版本的Excel。 對於新版本的Excel compatilidad問題只能處理256列。

的第一件事,我們需要的是添加Microsoft.Office.Interop.Excel參考,我們做如下:

Importar referencia a Excel

參考導入到Excel中

Importar referencia Excel

導入Excel參考

然後,我們需要一種形式,一個按鈕,DataGridView和進度條。 我們可以在圖片中看到:

Formulario aplicación para exportar dataset a excel

應用程序的形式出口到Excel的數據集

現在,我想告訴所有的代碼是非常簡單的,最重要的是,它適應任何表。 你將能夠重複使用,沒有問題。

 進口System.Data
進口的System.Data.SqlClient
進口Microsoft.Office.Interop

公共類Form1
    作為新的DataSet的私人DS

    小組將Form1_Load(0 System.Object的,BYVAL e由於發件人)把手MyBase.Load
         '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
         '/ /創建連接,並填寫在DataGridView
         '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
        昏暗的CNN(“數據源=本地\ SQLEXPRESS;初始目錄=羅斯文集成安全性= TRUE”)作為新的SqlConnection
        昏暗的大作為新的SqlDataAdapter(“SELECT *從客戶”,CNN)
         da.Fill(DS)
         DataGridView1.DataSource = ds.Tables(0)
     END SUB

     BtnExportar_Click私人小組(作為System.Object的,BYVAL e由於的BYVAL發件人)處理btnExportar.Click
         '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / /
         '/ /創建Excel對象
         '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / /
        昏暗m_Excel
        昏暗objLibroExcel
        昏暗objHojaExcel
         m_Excel =的CreateObject(“Excel.Application的”)
         m_Excel.Workbooks.Add objLibroExcel =()
         objHojaExcel,= objLibroExcel.Worksheets(1)
         objHojaExcel.Name =“客戶”
         objHojaExcel.Visible = Excel.XlSheetVisibility.xlSheetVisible
         objHojaExcel.Activate()

         '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
         '/ /定義兩個變量來控制行和列
         '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
        昏暗行整數= 1
        昏暗列整數= 1

         '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
         '/ /設置列標題行
         '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
         objHojaExcel.Range(“A1”)。選擇()
        對於每個DC在ds.Tables(0)列。
             objHojaExcel.Range(的ColumnName(列)1)。價值= dc.ColumnName
            柱+ = 1
        未來
        列+ = 1

         '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
         '/ /格式化行標題
         '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
        由於PIAs無點心objRango = objHojaExcel.Range(“A1”的ColumnName(ds.Tables(0)Columns.Count)&“1”。)
         objRango.Font.Bold =真
         objRango.Cells.Interior.ColorIndex = 35

         objRango.Cells.Borders(Excel.XlBordersIndex.xlDiagonalDown)的LineStyle = Excel.XlLineStyle.xlLineStyleNone。
         objRango.Cells.Borders(Excel.XlBordersIndex.xlDiagonalUp)的LineStyle = Excel.XlLineStyle.xlLineStyleNone。
         objRango.Cells.Borders(Excel.XlBordersIndex.xlEdgeLeft)的LineStyle = Excel.XlLineStyle.xlLineStyleNone。
         objRango.Cells.Borders(Excel.XlBordersIndex.xlEdgeRight)的LineStyle = Excel.XlLineStyle.xlContinuous。
         objRango.Cells.Borders(Excel.XlBordersIndex.xlEdgeTop)的LineStyle = Excel.XlLineStyle.xlContinuous。
         objRango.Cells.Borders(Excel.XlBordersIndex.xlEdgeBottom)的LineStyle = Excel.XlLineStyle.xlContinuous。

         '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
         '/ /加載DataTable中的所有行
         '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
         ProgressBar1.Maximum = ds.Tables(0)。Rows.Count
        列= 1
         ProgressBar1.Value = 0
        對於每個醫生在ds.Tables(0)。行
            列= 1
            對於每個DC在ds.Tables(0)列。
                 objHojaExcel.Range(的ColumnName(列)行)。價值=博士(dc.ColumnName)
                柱+ = 1
            未來
            列+ = 1
             ProgressBar1.Value + = 1
        未來

         '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
         '/ /自動調整寬度
         '/ /從所有使用的列
         '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
         objRango = objHojaExcel.Range(“A1”的ColumnName(ds.Tables(0)Columns.Count)ds.Tables(0)Rows.Count.ToString。)
         objRango.Select()
         objRango.Columns.AutoFit()

         '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
         '/ /我們告訴Excel將顯示
         '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
         MSGBOX(“導出到Excel中完成”MsgBoxStyle.Information的“。:: Solovb.net ::”。)
         m_Excel.Visible = TRUE

     END SUB

    作為字符串的公共功能的ColumnName(將作為整數級)
        作為字符串暗淡列(256)

        列(1)=“A”的
         (2)欄的“B”
        列(3)=的“C”
         (4)欄的“D”
         (5)欄的“E”
         (6)欄中的“F”
         (7)欄中的“G”
         (8)欄中的“H”
         (9)欄=“我”
         (10)欄中的“J”
         (11)欄中的“K”
         (12)欄為“L”
        列(13)=的“M”
        列(14)=的“N”
        列(15)=“澳”
         (16)欄中的“P”
        列(17)=“問”
        列(18)=的“R”
        列(19)=的“S”
        列(20)=的“T”
        列(21)=“U”形
        列(22)=的“V”
        列(23)=“寬”
         (24)欄中的“X”
        列(25)=的“Y”
        列(26)=的“Z”
        列(27)=“AA”
        列(28)=“AB公司”
        列(29)=“交流”
        列(30)=“公元”
        列(31)=“曝光”
        列(32)=“自動對焦”
        列(33)=“公司”
        列(34)=“啊”
        列(35)=“大赦國際”
        列(36)=“AJ。”
        列(37)=“支AK”
        列(38)=“鋁”
        列(39)=“AM”(上午)
        列(40)=“”
        列(41)=“敖”
        列(42)=“美聯社”
        列(43)=“阿Q”
        列(44)=“受體”
        列(45)=“作為”
        列(46)=“在”
        列(47)=“UA”
        列(48)=“​​影音”
        列(49)=“仙”
        列(50)=的“AX”
        列(51)=“AY”
        列(52)=“字母”
        列(53)=“廣管局”
        列(54)=的“BB”
        列(55)=“公元前”
        列(56)=“藍光”
        列(57)=“”
        列(58)=“高爐”
        列(59)=“保函”
        列(60)=“波黑”
        列(61)=“詩經”
        列(62)=“北京”
        列(63)=“BK”
        列(64)=“基本法”
        列(65)=“獸王”
        列(66)=“國民”
        列(67)=“公報”
        列(68)=“英國石油公司”
        列(69)=“燒烤”
        列(70)=“商業登記”
        列(71)=“學士”
        列(72)=:“BT”
        列(73)=“卜”
        列(74)=  - “BV”
        列(75)=“體重”
        列(76)=“BX”
        列(77)=“後面”
        列(78)=“渤”
        列(79)=“CA”
        列(80)=“可換股債券”
        列(81)=“消委會”
        列(82)=“CD”
        列(83)=“行政長官”
        列(84)=“CF卡”
        列(85)=“企業管治”
        列(86)=“通道”
        列(87)=“信賴區間”
        列(88)=“名人官​​司”
        列(89)=“長江”
        列(90)=“瘦肉精”
        列(91)=“招商”
        列(92)=的“CN”
        列(93)=“二氧化碳”
        列(94)=“處長”
        列(95)=“重慶”
        列(96)=“華潤”
        列(97)=的“CS”
        列(98)=“CT”
        列(99)=“銅”
        列(100)=“簡歷”
        列(101)=“連續”
        列(102)=“國泰航空”
        列(103)=“中青”
        列(104)=“鋯石”
        列(105)=“大”
        列(106)=“數據庫”
        列(107)=“特區”
        列(108)=“副署長”
        列(109)=“德”
        列(110)=“東風”
        列(111)=“危險品”
        列(112)=“衛生署”
        列(113)=“身份證”
        列(114)=的“DJ”
        列(115)=“的DK”
        列(116)=“DL”
        列(117)=“馬克”
        列(118)=“的DN”
        列(119)=“DO”
        列(120)=“的DP”
        列(121)=“DQ的”
        列(122)=“議員”
        列(123)=“副”
        列(124)=的“DT”
        列(125)=“杜”
        列(126)=“家庭暴力”
        列(127)=“德國之聲”
        列(128)=“的DX”
        列(129)=“空間DY”
        列(130)=“德滋”
        列(131)=“電針”
        列(132)=“光大”
        列(133)=“歐共體”
        列(134)=“海關”
        列(135)=“電子工程專輯”
        列(136)=“英”
        列(137)=“乙二醇”
        列(138)=“高血壓”
        列(139)=“依愛”
        列(140)=“EJ”
        列(141)=“克朗”
        列(142)=“開”
        列(143)=“微軟”
        列(144)=“”
        列(145)=“僱傭條例”
        列(146)=“的EP”
        列(147)=“情商”
        列(148)=“​​急診室”
        列(149)=“胚胎”
        列(150)=“ET外星人”
        列(151)=“歐盟”
        列(152)=“電動車”
        列(153)=“電子戰”
        列(154)=“EX”
        列(155)=“安永”
        列(156)=“簡易”
        列(157)=“足總杯”
        列(158)=“的FB”
        列(159)=“功能界別”
        列(160)=“定存”
        列(161)=“富裕”
        列(162)=“法郎”
        列(163)=“福源”
        列(164)=“跳頻”
        列(165)=“FI”
        列(166)=“FJ”
        列(167)=“FK”
        列(168)=“佛羅里達”
        列(169)=“調頻”
        列(170)=“新生力量”
        列(171)=“FO的”
        列(172)=“計劃生育”
        列(173)=“CF卡”
        列(174)=“阻燃”
        列(175)=“財政司司長”
        列(176)=“金融時報”
        列(177)=“富”
        列(178)=“光伏”
        列(179)=“防火牆”
        列(180)=“外匯”
        列(181)=“風雲”
        列(182)=“FZ型”
        列(183)=“遺傳”
        列(184)=“國標”
        列(185)=“氣相色譜”
        列(186)=“廣東”
        列(187)=“通用電氣”
        列(188)=“綠”
        列(189)=“的GG”
        列(190)=“生長激素”
        列(191)=“特種部隊”
        列(192)=“吉焦”
        列(193)=“競”
        列(194)=“GL”
        列(195)=“通用”
        列(196)=“號政府公告”
        列(197)=“GO”
        列(198)=“家庭醫生”
        列(199)=“GQ”
        列(200)=“遺傳資源”
        列(201)=“廣深高速”
        列(202)=,“GT”
        列(203)=“顧”
        列(204)=“顆粒”
        列(205)=“毛”
        列(206)=“GX的”
        列(207)=“庚寅”
        列(208)=“廣州”
        列(209)=“房委會”
        列(210)=“乙肝”
        列(211)=“慧聰”
        列(212)=“高清”
        列(213)=“他”
        列(214)=“高頻”
        列(215)=“氫化”
        列(216)=“農戶”
        列(217)=“您好”
        列(218)=“黃建忠”
        列(219)=“香港”
        列(220)=“紅蓮”
        列(221)=“陛下”
        列(222)=“HN”
        列(223)=“議員”
        列(224)=“HP”
        列(225)=“總部”
        列(226)=“人力資源”
        列(227)=“爆頭”
        列(228)=“羥色胺”
        列(229)=“胡”
        列(230)=“高壓”
        列(231)=“硬件”
        列(232)=“高”
        列(233)=“海鷹”
        列(234)=“赫茲”
        列(235)=“保監”
        列(236)=“興業”
        列(237)=“集成電路”
        列(238)=“身份證”
        列(239)=“IE瀏覽器”
        列(240)=“如果”
        列(241)=“中空玻璃”
        列(242)=“中轉”
        列(243)=“二”
        列(244)=“IJ”
        列(245)=“的IK”
        列(246)=“伊爾”
        列(247)=“聊天室”
        列(248)=“​​中”
        列(249)=“的IO”
        列(250)=“知識產權”
        列(251)=“智商”
        列(252)=的“R”
        列(253)=“”
        列(254)=“”
        列(255)=“國際單位”
        列(256)=“四”

        返回列(數)
    函數結束
末級 

這種方法也使我受益匪淺,我希望你也這樣做,請留下您的意見。

31“自動導出DataTable添加到Microsoft Excel”

  1. Bitacoras.com 說:

    信息Bitacoras.com ...

    率在Bitacoras.com:嗨,今天,我想表明,一直擔任我很長一段時間,但我仍然使用它的例子。 我們做出了榜樣,以一個DataTable導出到Excel完整的列數或行,無論10克......

    • 卡洛斯·利納雷斯說:

      好極了!

      優秀的後! 謝謝你幫助我全面,但我有一個疑問...... 由於鏈接是..用sql 我該如何重新命名列! 因為它帶來了SQL的字段的名稱。!

      我希望我的理解......

      謝謝!

  2. 電工說:

    我要救...
    在某些時候,這將是有益...

  3. 維克多說:

    這是Excel 2007中有效嗎? 我曾與出口發展的問題,它是有效的早期版本,但不是2007年。 謝謝

  4. 約翰說:

    巨大的源代碼。 使我受益匪淺。 功能問才姍姍來遲。

  5. 約翰說:

    雖然還需要ecxel“進口數據表。 但也可能是環境的一個DataGrid,然後更新的DataAdapter和接受DataTable的變化將被保存在Q BD ......我希望我可以幫助找到...... 謝謝

  6. 何塞說:

    您好許多的感謝! 這個優秀的!
    但我不知道其中的DataGrid指定的情況下使用DataGrid的幾個?

    • 卡洛斯·利納雷斯說:

      在桌子上,你隨叫隨到......

      選擇*從(表名)

      如果你想指定你想要的字段

      選擇(字段,字段,字段)從表*
      EJM
      從車車,顏色,今年選擇

  7. 貝托說:

    我做2個變量DC和DR的錯誤,我有一個問題這個例子,我可以做些什麼來解決它?

    • 以利沙說:

      嗨,試試這個:
      對於每個醫生的DataRow在ds.Tables(0)。行和DataColumn每個DC在ds.Tables(0)列

      我希望,這是解決的。 的問候。

  8. 賈森說:

    HOLA。
    這chevere,但列名的一部分,是不是很實用。
    我上傳到我的博客小得多的代碼大小的限制,並沒有

    jaysson.blogspot.com

  9. 羅德里戈說:

    好文章,但我有一個問題在我的電腦與Excel 2007中的工程順利,但與用Excel 2003或更早版本的計算機不起作用。 有誰知道如果庫的問題,都是進口的,因為你的意思是任何Excel的作品,但我也遇到這個問題。

    讓我們來看看,如果有人能解決的疑問。
    謝謝。

  10. 卡洛斯·利納雷斯說:

    好極了!

    優秀的後! 謝謝你幫助我全面,但我有一個疑問...... 由於鏈接是..用sql 我該如何重新命名列! 因為它帶來了SQL的字段的名稱。!

    我希望我的理解......

    謝謝!

  11. 亞歷山大說:

    公共,小組ExportarDatosExcel(0 DataGridView中,作為字符串級稱號DataGridView1)
    作為新Excel.Application的點心m_Excel
    m_Excel.Cursor = Excel.XlMousePointer.xlWait
    m_Excel.Visible = TRUE
    作為Excel.Workbook點心objLibroExcel = m_Excel.Workbooks.Add
    由於Excel.Worksheet的點心objHojaExcel = objLibroExcel.Worksheets(1)
    與objHojaExcel
    。可見= Excel.XlSheetVisibility.xlSheetVisible
    。激活()
    “頭
    範圍(“格A1:L1”)。合併()
    範圍(“格A1:L1”)。值=“學院ARGENCAF”
    範圍(“格A1:L1”Font.Bold = TRUE)。
    範圍(“格A1:L1”)。Font.Size = 15
    “簇絨
    範圍(“A2:二級”)。合併()
    範圍(“A2:二級”)。價值=標題
    範圍(“A2:二級”)。Font.Bold = TRUE
    範圍(“A2:二級”)。Font.Size = 12

    CONST primeraLetra為char =“A”的
    短= 3 CONST firstNumber
    暗淡信為char,由於UltimaLetra的字符
    昏暗數作為整數,作為整數UltimoNumero
    暗淡字節=,上升cod_letra(primeraLetra) - 1
    暗淡的String = Application.CurrentCulture.NumberFormat.NumberDecimalSeparator sepDec
    暗淡的String = Application.CurrentCulture.NumberFormat.NumberGroupSeparator sepMil
    “女兒的計算列集格式
    StrColumna昏暗的String =“”
    LetraIzq昏暗的String =“”
    暗淡字節=,上升cod_LetraIzq(primeraLetra) - 1
    信= primeraLetra
    數= firstNumber
    作為PIAs無點心objCelda
    對於每一個在DataGridView1.Columns的C DataGridViewColumn
    然後,如果c.Visible
    如果信的“Z”,然後
    信= primeraLetra
    cod_letra = ASC(primeraLetra)
    cod_LetraIzq + = 1
    LetraIzq = CHR(cod_LetraIzq)
    其他
    cod_letra + = 1
    信= CHR(cod_letra)
    結束如果
    strColumna = LetraIzq +歌詞+ Numero.ToString
    objCelda =(strColumna,Type.Missing的範圍)
    objCelda.Value = c.HeaderText
    objCelda.EntireColumn.Font.Size = 8
    'ObjCelda.EntireColumn.NumberFormat = c.DefaultCellStyle.Format
    如果c.ValueType的GetType(十進制)OrElse運算c.ValueType的GetType(雙)
    objCelda.EntireColumn.NumberFormat =“#”sepMil“0”sepDec“00”
    結束如果
    結束如果
    未來

    作為點心objRangoEncab PIAs無=範圍(primeraLetra + Numero.ToString,LetraIzq +歌詞+ Numero.ToString)
    objRangoEncab.BorderAround(1 Excel.XlBorderWeight.xlMedium)
    UltimaLetra =發送
    暗淡的String = LetraIzq UltimaLetraIzq

    負載數據
    暗淡我作為整數= + 1

    對於每個作為的DataGridViewRow DataGridView1.Rows名單
    LetraIzq =“”
    cod_LetraIzq = ASC(primeraLetra) - 1
    信= primeraLetra
    cod_letra = ASC(primeraLetra) - 1
    對於每一個在DataGridView1.Columns的C DataGridViewColumn
    然後,如果c.Visible
    如果信的“Z”,然後
    信= primeraLetra
    cod_letra = ASC(primeraLetra)
    cod_LetraIzq + = 1
    LetraIzq = CHR(cod_LetraIzq)
    其他
    cod_letra + = 1
    信= CHR(cod_letra)
    結束如果
    strColumna = LetraIzq +歌詞
    “這應該是負載
    細胞(I,strColumna)= IIF(IsDBNull以便(reg.ToString)“,”reg.Cells(c.Index)。價值)
    “細胞(我,strColumna)= IIF(IsDBNull以便(註冊(c.DataPropertyName)),c.DefaultCellStyle.NullValue,章(c.DataPropertyName))
    “範圍(strColumna + I,strColumna + I)。()

    結束如果
    未來
    =範圍作為PIAs無點心objRangoReg(primeraLetra + i.ToString,i.ToString strColumna)
    objRangoReg.Rows.BorderAround()
    objRangoReg.Select()
    I + = 1
    未來
    UltimoNumero = I

    “畫線列
    LetraIzq =“”
    cod_LetraIzq = ASC(“甲”)
    cod_letra = ASC(primeraLetra)
    信= primeraLetra
    對於每一個在DataGridView1.Columns的C DataGridViewColumn
    然後,如果c.Visible
    。objCelda =範圍(LetraIzq +歌詞+ primerNumero.ToString,LetraIzq +歌詞+(UltimoNumero - 1)的ToString)
    objCelda.BorderAround()
    如果信的“Z”,然後
    信= primeraLetra
    cod_letra = ASC(primeraLetra)
    LetraIzq = CHR(cod_LetraIzq)
    cod_LetraIzq + = 1
    其他
    cod_letra + = 1
    信= CHR(cod_letra)
    結束如果
    結束如果
    未來

    “畫厚的外部邊界
    作為PIAs無點心objRango =範圍primeraLetra + primerNumero.ToString,UltimaLetra UltimaLetraIzq +(UltimoNumero - 1)的ToString()
    objRango.Select()
    objRango.Columns.AutoFit()
    objRango.Columns.BorderAround(1 Excel.XlBorderWeight.xlMedium)
    結尾

    m_Excel.Cursor = Excel.XlMousePointer.xlDefault
    END SUB

    私人小組ToolStripButton2_Click_1(作為System.Object的,BYVAL e由於的BYVAL發件人)處理ToolStripButton2.Click
    ExportarDatosExcel(DataGridView1,“出口”)
    END SUB

  12. JuanPeople說:

    好極了!!...... 感謝兄弟,並採取了3天,同一個模塊導入/導出Excel和沒有工作....但你的解決方案,我再次看到星星......問候:從阿雷基帕!......

  13. TECKNOCK說:

    此代碼幫我很多,所以我與我的兩分錢:

    優化“的ColumnName”到達ahsta ZZ的列(702等。)

    在這裡,我給你的代碼:

    作為字符串的公共功能的ColumnName(將作為整數級)
    作為字符串暗淡列(703)

    列(1)=“A”的
    (2)欄的“B”
    列(3)=的“C”
    (4)欄的“D”
    (5)欄的“E”
    (6)欄中的“F”
    (7)欄中的“G”
    (8)欄中的“H”
    (9)欄=“我”
    (10)欄中的“J”
    (11)欄中的“K”
    (12)欄為“L”
    列(13)=的“M”
    列(14)=的“N”
    列(15)=“澳”
    (16)欄中的“P”
    列(17)=“問”
    列(18)=的“R”
    列(19)=的“S”
    列(20)=的“T”
    列(21)=“U”形
    列(22)=的“V”
    列(23)=“寬”
    (24)欄中的“X”
    列(25)=的“Y”
    列(26)=的“Z”

    昏暗的我= 27
    對於Ltr1 = 1至26
    對於Ltr2 = 1至26
    欄(i)=列(Ltr1)和列(Ltr2)
    I + = 1
    未來
    未來

    返回列(數)
    函數結束

    • 以利沙說:

      TECKNOCK,非常感謝你的幫助!,但記住,如果我們創建了這本書是兼容Excel中允許的最大列97-2003 256(四)。 正如評論,考慮到這個。

      以利沙

  14. raysip說:

    當我運行本地應用funcioana正確,但是當我在網站上上傳它不生成的Excel,但沒有得到錯誤

  15. aderson說:

    我期待haciend接地我的SQL

    不喜歡我在做什麼,但我會盡AJA

  16. 保羅說:

    我需要幫助,嘗試這樣做,你在這裡,我得到錯誤

  17. 約翰說:

    另一方面,你的完美FuncA的行最大。

  18. neji說:

    祝賀非常好,是最好的帖子我已經閱讀並徵詢

  19. 帕特里夏說:

    謝謝! 這是非常有益的

  20. f.delgado說:

    嘿代碼對我不起作用,標誌著da.Fill錯誤(DS)

    我標記的錯誤沒有被發現的SQLException

    你能幫助我

  21. JAV說:

    一個問題可以直接裝載SQL查詢到Excel?

    事先通過

  22. 德爾菲諾莫拉萊斯說:

    朋友首先你agradesco你的貢獻。
    請注意,我有一個問題,我無法找到你表明,我已經安裝了Office 2010的,這不能成為我的問題的參考。
    agradeseria給你一些建議。

  23. 美國說:

    您好,很不錯的貢獻是我一直在尋找什麼......但是,當我運行它從開發服務器運行完美,但是當我從另一台電腦訪問網頁什麼也不做......沒有錯誤,但不記錄任何...

    有誰知道如何解決它?

  24. azofeifa克雷斯波說:

    非常感謝你幫我,你的例子是什麼dejor情況下是有用的人,作為一個生成函數生成我,而是直接從Excel文件存儲在一個網格中的值的基礎上

    '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
    '/ /設置列標題行
    '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
    objHojaExcel.Range(“A1”)。選擇()
    昏暗,我作為整數= 0
    lncol暗淡整數= 1
    對於每個在dgvSocios.Columns直流

    如果dgvSocios.Columns.Item(一)。可見= True,則
    objHojaExcel.Range(的ColumnName(lncol)1)。價值。的HeaderText = dgvSocios.Columns.Item(一)
    lncol + = 1
    結束如果
    i + = 1
    未來
    列+ = 1

    '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
    '/ /格式化行標題
    '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
    由於PIAs無點心objRango = objHojaExcel.Range(“A1”的ColumnName(lncol)&“1”)
    objRango.Font.Bold =真
    objRango.Cells.Interior.ColorIndex = 35

    objRango.Cells.Borders(Excel.XlBordersIndex.xlDiagonalDown)的LineStyle = Excel.XlLineStyle.xlLineStyleNone。
    objRango.Cells.Borders(Excel.XlBordersIndex.xlDiagonalUp)的LineStyle = Excel.XlLineStyle.xlLineStyleNone。
    objRango.Cells.Borders(Excel.XlBordersIndex.xlEdgeLeft)的LineStyle = Excel.XlLineStyle.xlLineStyleNone。
    objRango.Cells.Borders(Excel.XlBordersIndex.xlEdgeRight)的LineStyle = Excel.XlLineStyle.xlContinuous。
    objRango.Cells.Borders(Excel.XlBordersIndex.xlEdgeTop)的LineStyle = Excel.XlLineStyle.xlContinuous。
    objRango.Cells.Borders(Excel.XlBordersIndex.xlEdgeBottom)的LineStyle = Excel.XlLineStyle.xlContinuous。

    '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
    '/ /加載DataTable中的所有行
    '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
    ProgressBar1.Maximum = dgvSocios.Rows.Count
    列= 0
    ProgressBar1.Value = 0
    ProgressBar1.Visible = TRUE
    lnfila點心作為整數= 0
    I = 1,
    對於每個在dgvSocios.Rows博士
    列= 0

    對於每個在dgvSocios.Columns直流
    如果dgvSocios.Columns.Item(列)。可見= true,則
    objHojaExcel.Range(的ColumnName(一)及行)。價值= dgvSocios.Item(列,lnfila)。Value.ToString
    i + = 1
    結束如果
    柱+ = 1
    未來
    lnfila + = 1
    列+ = 1
    ProgressBar1.Value + = 1
    未來

    '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
    '/ /自動調整寬度
    '/ /從所有使用的列
    '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
    objRango = objHojaExcel.Range(“A1”的ColumnName(lncol)(lnfila + 1)的ToString。)
    objRango.Select()
    objRango.Columns.AutoFit()

    '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
    '/ /我們告訴Excel將顯示
    '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
    MSGBOX(“導出到Excel中完成”MsgBoxStyle.Information的“。:: Solovb.net ::”。)
    m_Excel.Visible = TRUE

評論