|
|
|
VBอยากทราบวิธี datagridview to excel โดยใน datagridview มีข้อมูลที่เป็นรูปภาพอยู่ด้วย หรือ สามารถเลือกเฉพาะข้อมูลที่เป็นตัวหนังสือได้หรือไม่ |
|
|
|
|
|
|
|
ลองกำหนด Column เฉพาะตัวหนังสือดูครับ ตัวอย่างผมมีให้
ASP.NET Excel.Application
|
|
|
|
|
Date :
2015-03-18 09:33:08 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณที่เข้ามาตอบนะครับ แต่ช่วยชี้ให้ตรงกว่านี้อีกนิสได้มั้ย คือผมไม่ได้เก่งอะไรมากนะครับ เวลาผมก็เหลือน้อยมาก ช่วยชี้อีกหน่อยเถอะครับ ขอร้องหละครับ
|
|
|
|
|
Date :
2015-03-18 21:42:01 |
By :
t92vb |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตามที่แนะนำก็มีหลายตัวอย่างครับ
|
|
|
|
|
Date :
2015-03-19 09:44:50 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมทำแบบนี้ไม่รู้จะตรงกับคำถามรึป่าวนะ คือดาต้ากริดอันนี้ของผม จะมีข้อมูลแต่ละครั้งไม่เหมือนกัน จำนวนคอลัมน์ก็ไม่เท่ากัน แต่ที่มีรูปภาพด้วยนี่ผมไม่แน่ใจครับ ถ้าให้ข้ามคอมลัมน์ที่เป็นรูปภาพไป
ตรง For coli = 1 To countCol ข้างล่างให้ใส่ Try ไว้ถ้ามันเออเรอร์ ก็ให้มัน exit for หรือ Next coli ออกไปทำคอมลัมน์ต่อไปหน่ะครับ
Code (VB.NET)
Dim a = MessageBox.Show("ระหว่างโปรแกรมทำการ Copy ข้อมูลทั้งหมดไปยังไฟล์ Excel กรุณาอย่ากระทำการใดจนกว่าจะเดินเนินการเสร็จ Yes/No", "แจ้งเตือง", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If a = Windows.Forms.DialogResult.No Then Exit Sub
'frmShowProgress.Show()
'frmShowProgress.ProgressBar1.Visible = True
For i = 1 To 10000
If a = 6 Then
System.Threading.Thread.CurrentThread.CurrentCulture = New System.Globalization.CultureInfo("th-th")
Dim xlApp As Excel.Application
Dim xlWorkBook As Excel.Workbook
Dim xlWorkSheet As Excel.Worksheet
Dim datestr As String = Now.ToString("yyyyMMddHmmss")
Dim tmpRpt As String = System.Windows.Forms.Application.StartupPath & "\ReportTmp\Qry\tmpQry.xls"
Dim newRpr As String = tmpRpt
xlApp = New Excel.ApplicationClass
xlWorkBook = xlApp.Workbooks.Open(newRpr) 'เปิดรายงาน
xlWorkSheet = xlWorkBook.Worksheets("sheet1")
Dim countCol As Integer = DgvAllSupport.ColumnCount
Dim countRow As Integer = DgvAllSupport.RowCount
xlWorkSheet.Range("A2").Value = "ลำดับ"
'เพิ่ม เส้นขอบในเซลล์
xlWorkSheet.Range("A2").Borders(Excel.XlBordersIndex.xlEdgeTop).LineStyle = Excel.XlBorderWeight.xlHairline
xlWorkSheet.Range("A2").Borders(Excel.XlBordersIndex.xlEdgeLeft).LineStyle = Excel.XlBorderWeight.xlHairline
xlWorkSheet.Range("A2").Borders(Excel.XlBordersIndex.xlEdgeRight).LineStyle = Excel.XlBorderWeight.xlHairline
xlWorkSheet.Range("A2").Borders(Excel.XlBordersIndex.xlEdgeBottom).LineStyle = Excel.XlBorderWeight.xlHairline
For CountNo = 1 To countRow
xlWorkSheet.Range("A" & CountNo + 2).Value = CountNo
'เพิ่ม เส้นขอบในเซลล์
xlWorkSheet.Range("A" & CountNo + 2).Borders(Excel.XlBordersIndex.xlEdgeTop).LineStyle = Excel.XlBorderWeight.xlHairline
xlWorkSheet.Range("A" & CountNo + 2).Borders(Excel.XlBordersIndex.xlEdgeLeft).LineStyle = Excel.XlBorderWeight.xlHairline
xlWorkSheet.Range("A" & CountNo + 2).Borders(Excel.XlBordersIndex.xlEdgeRight).LineStyle = Excel.XlBorderWeight.xlHairline
xlWorkSheet.Range("A" & CountNo + 2).Borders(Excel.XlBordersIndex.xlEdgeBottom).LineStyle = Excel.XlBorderWeight.xlHairline
dlg_ProgressTo7.ProgressBar1.Value = CountNo
dlg_ProgressTo7.Refresh()
Next CountNo
dlg_ProgressTo7.ProgressBar1.Value = 0
dlg_ProgressTo7.ProgressBar1.Maximum = countCol
For coli = 1 To countCol
Dim colname As String
colname = Choose(coli, "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "AA", "AB", "AC", "AD", "AE", "AF", "AG", "AH", "AI", "AJ", "AK", "AL", "AM", "AN", "AO", "AP", "AQ", "AR", "AS", "AT", "AU", "AV", "AW", "AX", "AY", "AZ", "BA", "BB", "BC", "BD", "BE", "BF", "BG", "BH", "BI", "BJ", "BK", "BL", "BM", "BN", "BO", "BP", "BQ", "BR", "BS", "BT", "BU", "BV", "BW", "BX", "BY")
xlWorkSheet.Range("A1").Value = Me.Text
xlWorkSheet.Range(colname & 2).Value = DgvAllSupport.Columns.Item(coli - 1).HeaderText
'เพิ่ม เส้นขอบในเซลล์
xlWorkSheet.Range(colname & 2).Borders(Excel.XlBordersIndex.xlEdgeTop).LineStyle = Excel.XlBorderWeight.xlHairline
xlWorkSheet.Range(colname & 2).Borders(Excel.XlBordersIndex.xlEdgeLeft).LineStyle = Excel.XlBorderWeight.xlHairline
xlWorkSheet.Range(colname & 2).Borders(Excel.XlBordersIndex.xlEdgeRight).LineStyle = Excel.XlBorderWeight.xlHairline
xlWorkSheet.Range(colname & 2).Borders(Excel.XlBordersIndex.xlEdgeBottom).LineStyle = Excel.XlBorderWeight.xlHairline
For rowi = 0 To countRow
Try
xlWorkSheet.Range(colname & rowi + 2).Value = DgvAllSupport.Rows(rowi - 1).Cells(coli - 1).Value.ToString
'เพิ่ม เส้นขอบในเซลล์
xlWorkSheet.Range(colname & rowi + 2).Borders(Excel.XlBordersIndex.xlEdgeTop).LineStyle = Excel.XlBorderWeight.xlHairline
xlWorkSheet.Range(colname & rowi + 2).Borders(Excel.XlBordersIndex.xlEdgeLeft).LineStyle = Excel.XlBorderWeight.xlHairline
xlWorkSheet.Range(colname & rowi + 2).Borders(Excel.XlBordersIndex.xlEdgeRight).LineStyle = Excel.XlBorderWeight.xlHairline
xlWorkSheet.Range(colname & rowi + 2).Borders(Excel.XlBordersIndex.xlEdgeBottom).LineStyle = Excel.XlBorderWeight.xlHairline
Catch ex As Exception
'MsgBox(ex.Message)
End Try
Next rowi
Next coli
MessageBox.Show("ทำการ Copy ข้อมูลทั้งหมดไปยังไฟล์ Excel เรียบร้อยแล้ว", "การทำงานเสร็จสิ้น", MessageBoxButtons.OK, MessageBoxIcon.Information)
xlApp.Visible = True
End If
Next
|
|
|
|
|
Date :
2015-03-24 20:58:07 |
By :
zarooman |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|