Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,038

HOME > .NET Framework > Forum > ต้องการดึงค่าจากวันที่ถึงวันที่ ที่ค้นหา ใน datagrid มาแสดงในไฟล์ที่ Export Excel ออกมา


 

[.NET] ต้องการดึงค่าจากวันที่ถึงวันที่ ที่ค้นหา ใน datagrid มาแสดงในไฟล์ที่ Export Excel ออกมา

 
Topic : 132115



โพสกระทู้ ( 58 )
บทความ ( 0 )



สถานะออฟไลน์



ต้องการดึงค่าวันที่จากวันที่ถึงวันที่ทั้งสองตัว มาแสดงใน excel ด้วยต้องทำไงครับ

rr

แ

อันนี้โค๊ดexcelครับ
Code (VB.NET)
01.Private Sub GirdToExcel(ByRef dgvw As DataGridView)
02.       Dim excel As New Microsoft.Office.Interop.Excel.Application
03.       Dim Libro As Microsoft.Office.Interop.Excel.Workbook
04.       Dim Hoja As Microsoft.Office.Interop.Excel.Worksheet
05.       Dim col As Integer = dgv1.ColumnCount
06.       Dim row As Integer = dgv1.RowCount
07.       Libro = excel.Workbooks.Add
08.       Hoja = excel.Worksheets.Add()
09. 
10.       excel.Workbooks(1).Worksheets(1).cells(1, 1).columnWidth = 10
11.       excel.Workbooks(1).Worksheets(1).cells(1, 1).RowHeight = 20
12. 
13.       With excel.ActiveSheet.Range("A1:J1")
14.           .MergeCells = True
15.       End With
16. 
17.       For i As Integer = 1 To col
18.           Hoja.Cells.Item(1, i) = dgv1.Columns(i - 1).Name.ToString
19.           excel.Workbooks(1).Worksheets(1).cells(1, 1).value = "รายงานงานเสร็จแล้วตามวันที่"
20.          
21. 
22.           excel.Workbooks(1).Worksheets(1).cells(3, 1).value = "รหัสลูกค้า"
23.           excel.Workbooks(1).Worksheets(1).cells(3, 2).value = "รหัสงาน"
24.           excel.Workbooks(1).Worksheets(1).cells(3, 3).value = "วันที่รับงาน"
25.           excel.Workbooks(1).Worksheets(1).cells(3, 4).value = "ชื่อ"
26.           excel.Workbooks(1).Worksheets(1).cells(3, 5).value = "ตำบล"
27.           excel.Workbooks(1).Worksheets(1).cells(3, 6).value = "อำเภอ"
28.           excel.Workbooks(1).Worksheets(1).cells(3, 7).value = "จังหวัด"
29.           excel.Workbooks(1).Worksheets(1).cells(3, 8).value = "ผู้ประเมิน 1"
30.           excel.Workbooks(1).Worksheets(1).cells(3, 9).value = "ผู้ประเมิน 2"
31.           excel.Workbooks(1).Worksheets(1).cells(3, 10).value = "วันที่ส่งงาน"
32. 
33.       Next
34.       For fila As Integer = 0 To row - 1
35.           For e As Integer = 0 To col - 1
36.               Hoja.Cells.Item(fila + 4, e + 1) = dgv1.Rows(fila).Cells(e).Value
37.           Next
38. 
39.       Next
40.       Hoja.Rows.Item(1).font.bold = 5
41.       Hoja.Rows.Item(2).font.bold = 1
42.       Hoja.Rows.Item(1).horizontalAlignment = 3
43.       Hoja.Columns.AutoFit()
44.       excel.Application.Visible = True
45.       excel.Application.WindowState = Microsoft.Office.Interop.Excel.XlWindowState.xlMaximized
46.       Hoja = Nothing
47.       Libro = Nothing
48.       excel = Nothing
49.   End Sub




Tag : .NET, Excel (Excel.Application), VS 2008 (.NET 3.x), VS 2010 (.NET 4.x), VS 2012 (.NET 4.x)

Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2018-09-21 17:18:38 By : futurezax View : 1562 Reply : 2
 

 

No. 1

Guest


ก็ทำเหมือนกับโค้ดที่ท่านแทรกหัวรายการ "รายงานงานเสร็จแล้วตามวันที่"

อันนี้โค้ดของท่าน
Code (VB.NET)
01.For i As Integer = 1 To col
02.          Hoja.Cells.Item(1, i) = dgv1.Columns(i - 1).Name.ToString
03.          excel.Workbooks(1).Worksheets(1).cells(1, 1).value = "รายงานงานเสร็จแล้วตามวันที่"
04.          
05.         'แทรกโค้ดตรงนี้ ผมเอาไว้ประมาณบรรทัดที่ 3
06.         excel.Workbooks(1).Worksheets(1).cells(3, 2).value = "สถานะ  " & labelStatus & "     " & "จากวันที : " & DateTimePicker_Start.Value.ToShortDateString() & "  " & "ถึงวันที่ : " & DateTimePicker_End.Value.ToShortDateString()
07. 
08.         'แล้วร่นหัวคอลัมภ์ไปประมาณบรรทัดที่ 5
09.          excel.Workbooks(1).Worksheets(1).cells(5, 1).value = "รหัสลูกค้า"
10.          excel.Workbooks(1).Worksheets(1).cells(5, 2).value = "รหัสงาน"
11.          excel.Workbooks(1).Worksheets(1).cells(5, 3).value = "วันที่รับงาน"
12.          excel.Workbooks(1).Worksheets(1).cells(5, 4).value = "ชื่อ"
13.          excel.Workbooks(1).Worksheets(1).cells(5, 5).value = "ตำบล"
14.          excel.Workbooks(1).Worksheets(1).cells(5, 6).value = "อำเภอ"
15.          excel.Workbooks(1).Worksheets(1).cells(5, 7).value = "จังหวัด"
16.          excel.Workbooks(1).Worksheets(1).cells(5, 8).value = "ผู้ประเมิน 1"
17.          excel.Workbooks(1).Worksheets(1).cells(5, 9).value = "ผู้ประเมิน 2"
18.          excel.Workbooks(1).Worksheets(1).cells(5, 10).value = "วันที่ส่งงาน"
19. 
20.      Next


แต่ผมดูแล้วโค้ดด้านล่างนี้มันแปลกตรงที่ท่านวางใน Loop ซึ่งจริง ๆ แล้วกำหนดครั้งเดียวน่าจะเพียงพอแล้ว
น่าจะเอาไว้นอก Loop แทน

Code (VB.NET)
01.For i As Integer = 1 To col
02.           Hoja.Cells.Item(1, i) = dgv1.Columns(i - 1).Name.ToString
03. 
04.       Next
05. 
06.'อันนี้ไว้นอก Loop
07.           excel.Workbooks(1).Worksheets(1).cells(1, 1).value = "รายงานงานเสร็จแล้วตามวันที่"
08.           
09.          'แทรกโค้ดตรงนี้ ผมเอาไว้ประมาณบรรทัดที่ 3
10.          excel.Workbooks(1).Worksheets(1).cells(3, 2).value = "สถานะ  " & labelStatus & "     " & "จากวันที : " & DateTimePicker_Start.Value.ToShortDateString() & "  " & "ถึงวันที่ : " & DateTimePicker_End.Value.ToShortDateString()
11. 
12.          'แล้วร่นหัวคอลัมภ์ไปประมาณบรรทัดที่ 5
13.           excel.Workbooks(1).Worksheets(1).cells(5, 1).value = "รหัสลูกค้า"
14.           excel.Workbooks(1).Worksheets(1).cells(5, 2).value = "รหัสงาน"
15.           excel.Workbooks(1).Worksheets(1).cells(5, 3).value = "วันที่รับงาน"
16.           excel.Workbooks(1).Worksheets(1).cells(5, 4).value = "ชื่อ"
17.           excel.Workbooks(1).Worksheets(1).cells(5, 5).value = "ตำบล"
18.           excel.Workbooks(1).Worksheets(1).cells(5, 6).value = "อำเภอ"
19.           excel.Workbooks(1).Worksheets(1).cells(5, 7).value = "จังหวัด"
20.           excel.Workbooks(1).Worksheets(1).cells(5, 8).value = "ผู้ประเมิน 1"
21.           excel.Workbooks(1).Worksheets(1).cells(5, 9).value = "ผู้ประเมิน 2"
22.           excel.Workbooks(1).Worksheets(1).cells(5, 10).value = "วันที่ส่งงาน"


สำหรับ Loop เพิ่มรายละเอียดข้อมูลท่านก็ร่นลำดับจาก 4 ไปเป็น 6 แทน

Code (VB.NET)
1.For fila As Integer = 0 To row - 1
2.           For e As Integer = 0 To col - 1
3.               Hoja.Cells.Item(fila + 6, e + 1) = dgv1.Rows(fila).Cells(e).Value
4.           Next
5. 
6.       Next

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-09-21 18:04:04 By : K
 

 

No. 2



โพสกระทู้ ( 58 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 1 เขียนโดย : K เมื่อวันที่ 2018-09-21 18:04:04
รายละเอียดของการตอบ ::
ได้ละครับ ขอบคุณมากๆครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-09-24 09:31:51 By : futurezax
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ต้องการดึงค่าจากวันที่ถึงวันที่ ที่ค้นหา ใน datagrid มาแสดงในไฟล์ที่ Export Excel ออกมา
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)





ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่