Hari ini saya ingin menunjukkan contoh yang telah membantu saya untuk waktu yang lama namun saya masih menggunakannya.
Kami akan membuat contoh untuk mengekspor DataTable ke Excel penuh terlepas dari jumlah kolom atau baris yang memiliki.
Mungkin ada banyak cara untuk melakukan ini, tapi aku merasa sangat berguna karena metode ini bekerja untuk semua versi Excel. Untuk masalah compatilidad dengan versi terbaru dari Excel hanya menangani 256 kolom.
Hal pertama yang kita butuhkan adalah menambahkan referensi ke Microsoft.Office.Interop.Excel dan kita lakukan sebagai berikut:

Impor referensi ke Excel

Impor Excel referensi
Kemudian kita perlu bentuk, tombol, DataGridView dan progress bar. Kita dapat memiliki seperti yang terlihat pada gambar:

Formulir untuk ekspor dataset ke excel
Sekarang saya ingin menunjukkan semua kode benar-benar sederhana hal yang paling penting adalah bahwa menyesuaikan dengan tabel apapun. Anda akan dapat menggunakan kembali tanpa masalah.
Impor System.Data Impor Public Class Form1 Impor System.Data.SqlClient ds Swasta Microsoft.Office.Interop Sebagai DataSet New (ByVal pengirim Sebagai System.Object, ByVal e Sebagai System.EventArgs) Private Sub Form1_Load Menangani 'MyBase.Load / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / '/ / Buat koneksi dan isi DataGridView '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / Dim cnn Sebagai SqlConnection Baru ("Data Source = localhost \ SQLEXPRESS; Katalog awal = Northwind; Keamanan Terpadu = True") Dim da SqlDataAdapter Baru ("* Pilih dari pelanggan", cnn) memberikan. Isi (ds) DataGridView1.DataSource ds.Tables = (0) End Sub Private Sub btnExportar_Click (ByVal sender Sebagai System.Object, ByVal e Sebagai System.EventArgs) Menangani btnExportar.Click '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / '/ / Buat Object Excel / / / / / / / / / / / / / / / / / / / / / / / / / / / / / Dim Dim Dim m_Excel objLibroExcel objHojaExcel m_Excel = CreateObject ("Excel.Application") m_Excel.Workbooks.Add objLibroExcel = () = objLibroExcel.Worksheets objHojaExcel (1) objHojaExcel.Name = "Pelanggan" objHojaExcel.Visible = Excel . XlSheetVisibility.xlSheetVisible objHojaExcel.Activate () '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / '/ / mendefinisikan dua variabel untuk mengontrol baris dan kolom' / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / Dim baris As Integer 1 kolom = Dim As Integer = 1 '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / '/ / Kami menetapkan garis dengan judul kolom '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / objHojaExcel.Range ("A1"). Pilih () Untuk Setiap dc Dalam ds.Tables (0). Kolom objHojaExcel.Range (ColumnName (kolom) & 1). Nilai = dc.ColumnName kolom + = 1 baris Berikutnya + = 1 '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / '/ / Kami format baris judul' / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / Dim Excel.Range = objHojaExcel.Range objRango ("A1:". & ColumnName (ds.Tables (0) Columns.Count) & "1") objRango.Font Bold = True 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 = objRango.Cells.Borders Excel.XlLineStyle.xlContinuous (Excel.XlBordersIndex.xlEdgeBottom). LineStyle Excel.XlLineStyle.xlContinuous = '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / '/ / Load semua baris dalam DataTable' / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / ProgressBar1.Maximum = ds.Tables (0). Rows.Count kolom ProgressBar1.Value = 1 = 0 Untuk Setiap kolom Rows dr Dalam ds.Tables (0). = 1 Untuk Setiap dc Dalam ds.Tables (0). Kolom objHojaExcel.Range (ColumnName (kolom) & baris). Nilai = dr (dc.ColumnName) kolom + = 1 baris Berikutnya + = 1 + = 1 Next ProgressBar1.Value '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / '/ / Kami menyesuaikan lebar secara otomatis' / / untuk semua kolom yang digunakan '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / objRango = objHojaExcel.Range ("A1:".. & ColumnName (ds.Tables (0) Columns.Count) & ds.Tables (0) Rows.Count.ToString) objRango.Select () objRango Columns.AutoFit (.) '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /' / / Kami memberitahu Excel untuk menampilkan '/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / MsgBox ("Ekspor ke Excel Lengkap" , MsgBoxStyle.Information, ":: solovb.net. ::.") m_Excel.Visible = True End Sub Fungsi ColumnName Publik (jumlah ByVal As Integer) As String Dim kolom (256) Sebagai kolom String (1) = "A" kolom (2) = "B" pilar (3) = "C" kolom (4) = "D" pilar (5) = "E" kolom (6) = "F" kolom (7) = "G" kolom ( 8) = "H" kolom (9) = "saya" kolom (10) = "J" kolom (11) = "K" kolom (12) = "L" kolom (13) = "M" kolom (14) = "N" kolom (15) = "B" kolom (16) = "P" kolom (17) = "Q" kolom (18) = "R" kolom (19) = "S" kolom (20) = " T "kolom (21) =" U "kolom (22) =" V "kolom (23) =" B "kolom (24) =" X "kolom (25) =" Y "kolom (26) =" Z " kolom (27) = "AA" kolom (28) = "AB" kolom (29) = "AC" kolom (30) = "AD" kolom (31) = "AE" kolom (32) = "AF" kolom ( 33) = "AG" Kolom (34) = "AH" kolom (35) = "Jumlah" kolom (36) = "AJ" kolom (37) = "AK" kolom (38) = "TO" kolom (39) = "AM" kolom (40) = "NA" kolom (41) = "AO" kolom (42) = "AP" kolom (43) = "AQ" kolom (44) = "RA" kolom (45) = " SEBAGAI "kolom (46) =" AT "kolom (47) =" AU "kolom (48) =" AV "kolom (49) =" AW "kolom (50) =" AX "kolom (51) =" AY " kolom (52) = "AZ" kolom (53) = "BA" kolom (54) = "BB" kolom (55) = "SM" kolom (56) = "BD" kolom (57) = "BE" kolom ( 58) = "BF" kolom (59) = "BG" kolom (60) = "BH" kolom (61) = "BI" kolom (62) = "BJ" kolom (63) = "BK" kolom (64) = "BL" kolom (65) = "BM" kolom (66) = "BN" kolom (67) = "BO" kolom (68) = "BP" kolom (69) = "BQ" kolom (70) = " BR "kolom (71) =" BS "kolom (72) =" BT "kolom (73) =" BU "kolom (74) =" BV "kolom (75) =" BW "kolom (76) =" BX " kolom (77) = "BY" kolom (78) = "BZ" kolom (79) = "CA" kolom (80) = "CB" kolom (81) = "CC" kolom (82) = "CD" kolom ( 83) = "CE" kolom (84) = "CF" kolom (85) = "CG" kolom (86) = "CH" kolom (87) = "CI" kolom (88) = "CJ" kolom (89) = "CK" kolom (90) = "CL" kolom (91) = "CM" kolom (92) = "CN" kolom (93) = "CO" kolom (94) = "CP" kolom (95) = " CQ "kolom (96) =" CR "kolom (97) =" CS "kolom (98) =" CT "kolom (99) =" CU "kolom (100) =" CV "kolom (101) =" CW " kolom (102) = "CX" kolom (103) = "CY" kolom (104) = "CZ" kolom (105) = "DA" kolom (106) = "DB" kolom (107) = "DC" kolom ( 108) = "DD" kolom (109) = "DE" kolom (110) = "DF" kolom (111) = "DG" kolom (112) = "DH" kolom (113) = "ID" kolom (114) = "DJ" kolom (115) = "DK" kolom (116) = "DL" kolom (117) = "DM" kolom (118) = "DN" kolom (119) = "DO" kolom (120) = " DP "kolom (121) =" DQ "kolom (122) =" DR "kolom (123) =" DS "kolom (124) =" DT "kolom (125) =" DU "kolom (126) =" DV " kolom (127) = "DW" kolom (128) = "DX" kolom (129) = "DY" kolom (130) = "DZ" kolom (131) = "EA" kolom (132) = "EB" kolom ( 133) = "EC" kolom (134) = "ED" kolom (135) = "EE" kolom (136) = "EF" kolom (137) = "EG" kolom (138) = "EH" kolom (139) = "EI" kolom (140) = "EJ" kolom (141) = "EK" kolom (142) = "EL" kolom (143) = "MS" kolom (144) = "IN" kolom (145) = " EO "kolom (146) =" EP "kolom (147) =" EQ "kolom (148) =" ER "kolom (149) =" ES "kolom (150) =" ET "kolom (151) =" Uni Eropa " kolom (152) = "EV" kolom (153) = "EW" kolom (154) = "EX" kolom (155) = "EY" kolom (156) = "EZ" kolom (157) = "FA" kolom ( 158) = "FB" kolom (159) = "FC" kolom (160) = "FD" kolom (161) = "FE" kolom (162) = "FF" kolom (163) = "FG" kolom (164) = "FH" kolom (165) = "FI" kolom (166) = "FJ" kolom (167) = "FK" kolom (168) = "FL" kolom (169) = "FM" kolom (170) = " FN "kolom (171) =" FO "kolom (172) =" FP "kolom (173) =" CF "kolom (174) =" FR "kolom (175) =" FS "kolom (176) =" FT " kolom (177) = "FU" kolom (178) = "FV" kolom (179) = "FW" kolom (180) = "FX" kolom (181) = "TA" kolom (182) = "FZ" kolom ( 183) = "GA" kolom (184) = "GB" kolom (185) = "GC" kolom (186) = "GD" kolom (187) = "GE" kolom (188) = "GF" kolom (189) = "GG" kolom (190) = "GH" kolom (191) = "GI" kolom (192) = "GJ" kolom (193) = "GK" kolom (194) = "GL" kolom (195) = " GM "kolom (196) =" GN "kolom (197) =" GO "kolom (198) =" GP "kolom (199) =" GQ "kolom (200) =" GR "kolom (201) =" GS " kolom (202) = "GT" kolom (203) = "GU" kolom (204) = "GV" kolom (205) = "GW" kolom (206) = "GX" kolom (207) = "GY" kolom ( 208) = "GZ" kolom (209) = "HA" kolom (210) = "HB" kolom (211) = "HC" kolom (212) = "HD" kolom (213) = "DIA" kolom (214) = "HF" kolom (215) = "HG" kolom (216) = "HH" kolom (217) = "HI" kolom (218) = "HJ" kolom (219) = "HK" kolom (220) = " HL "kolom (221) =" HM "kolom (222) =" HN "kolom (223) =" HO "kolom (224) =" HP "kolom (225) =" HQ "kolom (226) =" HR " kolom (227) = "HS" kolom (228) = "HT" kolom (229) = "HU" kolom (230) = "HV" kolom (231) = "HW" kolom (232) = "H" kolom ( 233) = "HY" kolom (234) = "HZ" kolom (235) = "IA" kolom (236) = "IB" kolom (237) = "IC" kolom (238) = "ID" kolom (239) = "IE" kolom (240) = "JIKA" kolom (241) = "IG" kolom (242) = "IH" kolom (243) = "II" kolom (244) = "IJ" kolom (245) = " IK "kolom (246) =" IL "kolom (247) =" IM "kolom (248) =" IN "kolom (249) =" IO "kolom (250) =" IP "kolom (251) =" IQ " kolom (252) = "R" kolom (253) = "IS" kolom (254) = "IT" kolom (255) = "UI" kolom (256) Akhir Kelas Fungsi = "IV" Kembali kolom (jumlah) End Metode ini telah membantu saya dan saya harap Anda melakukan terlalu ... silakan tinggalkan komentar Anda.
Informasi Bitacoras.com ...
Laju Bitacoras.com: Hi, Hari ini saya ingin menunjukkan contoh yang telah membantu saya untuk waktu yang lama namun saya masih menggunakannya. Kami akan membuat contoh untuk mengekspor DataTable ke Excel penuh terlepas dari jumlah kolom atau baris yang teng .....
Bagus ...
Sangat baik posting! Terima kasih membantu saya penuh, tetapi saya memiliki keraguan .. Sebagai link adalah dengan sql .. Bagaimana cara mengubah nama kolom? Karena membawa nama bidang sql ..!
Saya berharap dan saya telah memahami ..
Terima kasih!
Aku akan menghemat ...
pada titik tertentu akan berguna ...
Apakah berlaku untuk Excel 2007? Saya memiliki masalah dengan ekspor untuk mengembangkan, bahwa itu berlaku untuk versi sebelumnya, tapi tidak untuk tahun 2007. Terima kasih
Besar sumber kode. membantu saya. q itu lama tertunda.
Meskipun juga perlu ecxel impor tabel data. tapi bisa jadi lingkungan untuk datagrid dan kemudian memperbarui DataAdapter dan menerima perubahan dalam DataTable akan disimpan dalam bd q ... Saya harap saya bisa membantu atau untuk menemukan .. terima kasih
Hi Terima kasih banyak! ini sangat baik!
Tapi saya ingin tahu di mana datagrid menetapkan bahwa digunakan dalam kasus yang beberapa datagrid?
Di atas meja Anda sedang telepon ...
select * from (nama tabel)
Jika Anda ingin menentukan bidang yang Anda inginkan
pilih (ladang, sawah, ladang) * dari meja
EJM
pilih mobil, warna, tahun dari mobil
Aku punya masalah dengan contoh ini saya membuat 2 kesalahan dalam variabel dc dan dr, saya bisa lakukan untuk memperbaikinya?
Hi, coba ini:
Untuk Setiap dr Sebagai DataRow Dalam ds.Tables (0). Baris dan DataColumn Untuk Setiap dc Dalam ds.Tables sebagai (0). Kolom
Saya berharap bahwa ini teratasi. Salam.
hola.
chevere ini, tetapi bagian dari nama kolom tidak sangat fungsional.
Saya akan upload ke blog saya sebuah keterbatasan kode jauh lebih kecil ukuran dan tanpa
jaysson.blogspot.com
siap dan pergi artikel
http://jaysson.blogspot.com/2010/06/columnas-es-excel.html
Baik artikel, tapi saya punya masalah di komputer saya dengan Excel 2007 bekerja lancar, tetapi dengan komputer dengan Excel 2003 atau sebelumnya tidak bekerja. Ada yang tahu jika masalah perpustakaan yang diimpor, karena Anda menyiratkan bahwa bekerja untuk excel, tapi saya menemui masalah ini.
Mari kita lihat jika seseorang dapat memecahkan keraguan.
Terima kasih.
Bagus ...
Sangat baik posting! Terima kasih membantu saya penuh, tetapi saya memiliki keraguan .. Sebagai link adalah dengan sql .. Bagaimana cara mengubah nama kolom? Karena membawa nama bidang sql ..!
Saya berharap dan saya telah memahami ..
Terima kasih!
Public Sub ExportarDatosExcel (ByVal DataGridView1 Sebagai DataGridView, judul ByVal As String)
Sebagai Excel.Application Dim Baru m_Excel
m_Excel.Cursor = Excel.XlMousePointer.xlWait
m_Excel.Visible = True
Sebagai Excel.Workbook Dim objLibroExcel = m_Excel.Workbooks.Add
Sebagai Excel.Worksheet Dim objHojaExcel = objLibroExcel.Worksheets (1)
Dengan objHojaExcel
Visible =. Excel.XlSheetVisibility.xlSheetVisible
Aktifkan (.)
'Header
Range ("A1: L1").. Merge ()
. Range ("A1: L1") Nilai = "LEMBAGA ARGENCAF".
Range ("A1: L1").. Font.Bold = True
. Range ("A1: L1") Font.Size = 15.
'Tuft
Range ("A2: L2").. Merge ()
Range ("A2: L2").. Nilai = judul
Range ("A2: L2").. Font.Bold = True
Range ("A2: L2").. Font.Size = 12
Const primeraLetra Sebagai Char = "A"
Const firstNumber Sebagai pendek = 3
Dim surat Sebagai Char, Char Sebagai UltimaLetra
Dim Jumlah As Integer, As Integer UltimoNumero
Dim As Byte = Asc cod_letra (primeraLetra) - 1
Dim As String = Application.CurrentCulture.NumberFormat.NumberDecimalSeparator sepDec
Dim As String = Application.CurrentCulture.NumberFormat.NumberGroupSeparator sepMil
'Set format kolom puteri perhitungan
StrColumna Dim As String = ""
LetraIzq Dim As String = ""
Dim As Byte = Asc cod_LetraIzq (primeraLetra) - 1
Surat = primeraLetra
Jumlah = firstNumber
Sebagai Excel.Range Dim objCelda
Untuk Setiap c Sebagai DataGridViewColumn Dalam DataGridView1.Columns
Kemudian jika c.Visible
Jika Surat = "Z" Lalu
Surat = primeraLetra
cod_letra = Asc (primeraLetra)
cod_LetraIzq + = 1
LetraIzq = Chr (cod_LetraIzq)
Lain
cod_letra + = 1
Surat = Chr (cod_letra)
End If
strColumna = LetraIzq + Lyrics + Numero.ToString
objCelda = Range (strColumna, Type.Missing).
objCelda.Value = c.HeaderText
objCelda.EntireColumn.Font.Size = 8
'ObjCelda.EntireColumn.NumberFormat = c.DefaultCellStyle.Format
Jika c.ValueType Apakah GetType (Desimal) OrElse c.ValueType Apakah GetType (Double) Lalu
objCelda.EntireColumn.NumberFormat = "#" + sepMil + "0" + sepDec + "00"
End If
End If
Berikutnya
Sebagai Excel.Range Dim objRangoEncab = Range (primeraLetra + Numero.ToString, LetraIzq + Lyrics + Numero.ToString).
objRangoEncab.BorderAround (1, Excel.XlBorderWeight.xlMedium)
UltimaLetra = Kirim
Dim As String = LetraIzq UltimaLetraIzq
"LOAD DATA
Dim i As Integer = Jumlah + 1
Untuk Setiap Dalam Daftar Sebagai DataGridViewRow DataGridView1.Rows
LetraIzq = ""
cod_LetraIzq = Asc (primeraLetra) - 1
Surat = primeraLetra
cod_letra = Asc (primeraLetra) - 1
Untuk Setiap c Sebagai DataGridViewColumn Dalam DataGridView1.Columns
Kemudian jika c.Visible
Jika Surat = "Z" Lalu
Surat = primeraLetra
cod_letra = Asc (primeraLetra)
cod_LetraIzq + = 1
LetraIzq = Chr (cod_LetraIzq)
Lain
cod_letra + = 1
Surat = Chr (cod_letra)
End If
strColumna = LetraIzq + Lyrics
"Di sini harus beban
Sel (i, strColumna). = IIF (IsDBNull (reg.ToString), "", reg.Cells (c.Index). Nilai)
'Sel (i, strColumna). = IIF (IsDBNull (reg. (c.DataPropertyName)), c.DefaultCellStyle.NullValue, reg (c.DataPropertyName))
'Range (strColumna + i, strColumna + i).. Dalam ()
End If
Berikutnya
Sebagai Excel.Range Dim objRangoReg =. Range (primeraLetra + i.ToString, i.ToString strColumna +)
objRangoReg.Rows.BorderAround ()
objRangoReg.Select ()
i + = 1
Berikutnya
UltimoNumero = i
"Buat garis dari kolom
LetraIzq = ""
cod_LetraIzq = Asc ("A")
cod_letra = Asc (primeraLetra)
Surat = primeraLetra
Untuk Setiap c Sebagai DataGridViewColumn Dalam DataGridView1.Columns
Kemudian jika c.Visible
. objCelda = Range (LetraIzq + Lyrics + primerNumero.ToString, LetraIzq + Lyrics + (UltimoNumero -. 1) ToString)
objCelda.BorderAround ()
Jika Surat = "Z" Lalu
Surat = primeraLetra
cod_letra = Asc (primeraLetra)
LetraIzq = Chr (cod_LetraIzq)
cod_LetraIzq + = 1
Lain
cod_letra + = 1
Surat = Chr (cod_letra)
End If
End If
Berikutnya
'Gambarkan batas luar tebal
Sebagai Excel.Range Dim objRango = Range (primeraLetra + primerNumero.ToString, UltimaLetra UltimaLetraIzq + + (UltimoNumero -. 1) ToString).
objRango.Select ()
objRango.Columns.AutoFit ()
objRango.Columns.BorderAround (1, Excel.XlBorderWeight.xlMedium)
Akhir Dengan
m_Excel.Cursor = Excel.XlMousePointer.xlDefault
End Sub
ToolStripButton2_Click_1 Private Sub (ByVal pengirim Sebagai System.Object, ByVal e Sebagai System.EventArgs) Menangani ToolStripButton2.Click
ExportarDatosExcel (DataGridView1, "ekspor")
End Sub
EXCELLENT!! .... terima kasih saudara, dan mengambil 3 hari dengan modul untuk impor / ekspor Excel dan tidak ada yang berhasil .... tapi dengan solusi Anda, saya melihat lagi bintang-bintang ... salam dari Arequipa! ..
Sama-sama. Aku senang kau menjadi contoh.
Kode ini banyak membantu saya, jadi saya berkolaborasi dengan dua sen:
Telah mengoptimalkan "ColumnName" tiba ahsta kolom ZZ (702 et al.)
Di sini saya memberikan kode:
Public Function ColumnName (jumlah ByVal As Integer) As String
Dim kolom (703) As String
Kolom (1) = "A"
kolom (2) = "B"
kolom (3) = "C"
kolom (4) = "D"
kolom (5) = "E"
kolom (6) = "F"
kolom (7) = "G"
kolom (8) = "H"
kolom (9) = "aku"
kolom (10) = "J"
kolom (11) = "K"
kolom (12) = "L"
kolom (13) = "M"
kolom (14) = "N"
kolom (15) = "O"
kolom (16) = "P"
kolom (17) = "Q"
kolom (18) = "R"
kolom (19) = "S"
kolom (20) = "T"
kolom (21) = "U"
kolom (22) = "V"
kolom (23) = "W"
kolom (24) = "X"
kolom (25) = "Y"
kolom (26) = "Z"
Dim i = 27
Untuk Ltr1 = 1 Untuk 26
Untuk Ltr2 = 1 Untuk 26
kolom (i) = kolom (Ltr1) & kolom (Ltr2)
i + = 1
Berikutnya
Berikutnya
Kembali kolom (angka)
End Function
TECKNOCK, terima kasih banyak untuk membantu, Tapi! Perlu diingat bahwa jika kita membuat buku ini kompatibel dengan Excel 97-2003 kolom maksimum yang diizinkan adalah 256 (untuk IV). Sama seperti komentar untuk mempertimbangkan ini.
Elisa
Ketika saya menjalankan aplikasi lokal funcioana benar, tetapi ketika saya upload di website tidak menghasilkan unggul tetapi tidak mendapatkan error
Saya mencari haciend soket untuk saya sql
tidak seperti yang saya lakukan tetapi Aku akan melakukan aja
Aku butuh bantuan mencoba untuk melakukannya setiap cara Anda di sini dan saya mendapatkan error semua
Tangan, Anda adalah maksimum funca sempurna.
[...] [...]
sangat baik, selamat yang di posting terbaik yang pernah membaca dan berkonsultasi
Terima kasih! Ini sangat membantu
Hei kode tidak bekerja pada saya menandai kesalahan da.Fill (ds)
Saya menandai kesalahan tidak ditemukan SQLException
Anda dapat membantu saya
satu pertanyaan dapat membuat loading query sql langsung ke excel?
sebelumnya dengan perantaraan
halo pertama-tama Anda agradesco kontribusi teman Anda.
Perhatikan bahwa saya punya masalah saya tidak dapat menemukan referensi yang Anda tentukan, saya telah menginstal kantor 2010 dan yang tidak dapat masalah saya.
agradeseria beberapa saran untuk Anda.
Halo, kontribusi yang sangat baik adalah apa yang saya cari ... tapi ketika saya menjalankannya dari server pengembangan bekerja sempurna, tetapi ketika saya mengakses web dari pc lain tidak apa-apa ... tidak ada kesalahan tetapi tidak apa-apa tidak merekam ...
Ada yang tahu bagaimana memperbaikinya?
Terima kasih banyak, membantu saya contoh Anda sebagai dasar untuk menghasilkan sebuah fungsi yang menghasilkan saya file Excel tetapi langsung dari nilai-nilai yang tersimpan dalam kotak adalah apa dejor kasus ini berguna bagi seseorang
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
'/ / Kami membuat garis dengan judul kolom
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
objHojaExcel.Range ("A1"). Pilih ()
Dim saya As Integer = 0
Lncol Dim As Integer = 1
Untuk Setiap dc Dalam dgvSocios.Columns
Jika dgvSocios.Columns.Item (I). Visible = Benar Kemudian
objHojaExcel.Range (ColumnName (lncol) & 1). Nilai = dgvSocios.Columns.Item (I). HeaderText
lncol + = 1
End If
Aku + = 1
Berikutnya
baris + = 1
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
'/ / Kami memformat judul baris
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
Sebagai Excel.Range Dim objRango = objHojaExcel.Range ("A1:" & ColumnName (lncol) & "1")
objRango.Font.Bold = True
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
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
'/ / Load semua baris dalam DataTable
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
ProgressBar1.Maximum = dgvSocios.Rows.Count
kolom = 0
ProgressBar1.Value = 0
ProgressBar1.Visible = True
Lnfila Dim As Integer = 0
I = 1
Untuk Setiap dr Dalam dgvSocios.Rows
kolom = 0
Untuk Setiap dc Dalam dgvSocios.Columns
Jika dgvSocios.Columns.Item (kolom). Visible = Benar Kemudian
objHojaExcel.Range (ColumnName (I) & baris). Nilai = dgvSocios.Item (kolom, lnfila). Value.ToString
Aku + = 1
End If
kolom + = 1
Berikutnya
lnfila + = 1
baris + = 1
ProgressBar1.Value + = 1
Berikutnya
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
'/ / Kami menyesuaikan lebar secara otomatis
'/ / Dari semua kolom yang digunakan
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
objRango = objHojaExcel.Range ("A1:" & ColumnName (lncol) & (lnfila + 1) ToString.)
objRango.Select ()
objRango.Columns.AutoFit ()
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
'/ / Kami memberitahu Excel untuk menampilkan
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
MsgBox ("Ekspor ke Excel Lengkap", MsgBoxStyle.Information, ":: Solovb.net. ::.")
m_Excel.Visible = True
Membawa sedikit untuk fungsi ini, kode berikut mencegah penggunaan "Range" untuk tidak memerlukan fungsi "ColumnName"
Salam,
Impor System.Data
Impor System.Data.SqlClient
Impor Microsoft.Office.Interop.Excel
Publik Modul mutil
Public Sub ExportarDtToExcel (ByVal Dt Sebagai System.Data.DataTable, judul ByVal As String)
Sebagai Excel.Application Dim m_Excel
Sebagai Excel.Workbook Dim objLibroExcel
Sebagai Lembar Kerja Dim objHojaExcel
Mencoba
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / /
'/ / Buat Object Excel
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / /
m_Excel = CreateObject ("Excel.Application")
m_Excel.Workbooks.Add objLibroExcel = ()
objHojaExcel = objLibroExcel.Worksheets (1)
objHojaExcel.Name = Judul
objHojaExcel.Visible = Excel.XlSheetVisibility.xlSheetVisible
objHojaExcel.Activate ()
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
'/ / Tentukan dua variabel untuk mengontrol baris dan kolom
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
Dim baris As Integer = 1
Dim kolom As Integer = 1
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
'/ / Kami membuat garis dengan judul kolom
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
'ObjHojaExcel.Range ("A1"). Pilih ()
objHojaExcel.Cells (baris, kolom). SELECT ()
Untuk Setiap dc Dalam Dt.Columns
objHojaExcel.Cells (baris, kolom). Nilai = dc.ColumnName
kolom + = 1
Berikutnya
baris + = 1
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
'/ / Kami memformat judul baris
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
Sebagai Excel.Range objRango = redup objHojaExcel.Range (objHojaExcel.Cells (1, 1), objHojaExcel.Cells (1, Dt.Columns.Count))
objRango.Font.Bold = True
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
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
'/ / Load semua baris dalam DataTable
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
kolom = 1
Untuk Setiap dr Dalam Dt.Rows
kolom = 1
Untuk Setiap dc Dalam Dt.Columns
objHojaExcel.Cells (baris, kolom). Nilai = dr (dc.ColumnName)
kolom + = 1
Berikutnya
baris + = 1
Berikutnya
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
'/ / Kami menyesuaikan lebar secara otomatis
'/ / Dari semua kolom yang digunakan
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
objHojaExcel.Cells objRango = (1, Dt.Columns.Count)
objRango.Select ()
objRango.Columns.AutoFit ()
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
'/ / Kami memberitahu Excel untuk menampilkan
'/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /
MsgBox ("Ekspor ke Excel Lengkap" MsgBoxStyle.Information, "Ekspor")
m_Excel.Visible = True
Menangkap mantan Sebagai Exception
MsgBox (ex.ToString)
Akhirnya
objHojaExcel = Tidak ada
objLibroExcel = Tidak ada
m_Excel = Tidak ada
Akhir Coba
End Sub
Akhir Modul