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

Registered : 107,904

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



 

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

 



Topic : 132115



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



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




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

rr

แ

อันนี้โค๊ดexcelครับ
Code (VB.NET)
 Private Sub GirdToExcel(ByRef dgvw As DataGridView)
        Dim excel As New Microsoft.Office.Interop.Excel.Application
        Dim Libro As Microsoft.Office.Interop.Excel.Workbook
        Dim Hoja As Microsoft.Office.Interop.Excel.Worksheet
        Dim col As Integer = dgv1.ColumnCount
        Dim row As Integer = dgv1.RowCount
        Libro = excel.Workbooks.Add
        Hoja = excel.Worksheets.Add()

        excel.Workbooks(1).Worksheets(1).cells(1, 1).columnWidth = 10
        excel.Workbooks(1).Worksheets(1).cells(1, 1).RowHeight = 20

        With excel.ActiveSheet.Range("A1:J1")
            .MergeCells = True
        End With

        For i As Integer = 1 To col
            Hoja.Cells.Item(1, i) = dgv1.Columns(i - 1).Name.ToString
            excel.Workbooks(1).Worksheets(1).cells(1, 1).value = "รายงานงานเสร็จแล้วตามวันที่"
          

            excel.Workbooks(1).Worksheets(1).cells(3, 1).value = "รหัสลูกค้า"
            excel.Workbooks(1).Worksheets(1).cells(3, 2).value = "รหัสงาน"
            excel.Workbooks(1).Worksheets(1).cells(3, 3).value = "วันที่รับงาน"
            excel.Workbooks(1).Worksheets(1).cells(3, 4).value = "ชื่อ"
            excel.Workbooks(1).Worksheets(1).cells(3, 5).value = "ตำบล"
            excel.Workbooks(1).Worksheets(1).cells(3, 6).value = "อำเภอ"
            excel.Workbooks(1).Worksheets(1).cells(3, 7).value = "จังหวัด"
            excel.Workbooks(1).Worksheets(1).cells(3, 8).value = "ผู้ประเมิน 1"
            excel.Workbooks(1).Worksheets(1).cells(3, 9).value = "ผู้ประเมิน 2"
            excel.Workbooks(1).Worksheets(1).cells(3, 10).value = "วันที่ส่งงาน"

        Next
        For fila As Integer = 0 To row - 1
            For e As Integer = 0 To col - 1
                Hoja.Cells.Item(fila + 4, e + 1) = dgv1.Rows(fila).Cells(e).Value
            Next

        Next
        Hoja.Rows.Item(1).font.bold = 5
        Hoja.Rows.Item(2).font.bold = 1
        Hoja.Rows.Item(1).horizontalAlignment = 3
        Hoja.Columns.AutoFit()
        excel.Application.Visible = True
        excel.Application.WindowState = Microsoft.Office.Interop.Excel.XlWindowState.xlMaximized
        Hoja = Nothing
        Libro = Nothing
        excel = Nothing
    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 : 491 Reply : 2
 

 

No. 1

Guest


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

อันนี้โค้ดของท่าน
Code (VB.NET)
 For i As Integer = 1 To col
           Hoja.Cells.Item(1, i) = dgv1.Columns(i - 1).Name.ToString
           excel.Workbooks(1).Worksheets(1).cells(1, 1).value = "รายงานงานเสร็จแล้วตามวันที่"
          
          'แทรกโค้ดตรงนี้ ผมเอาไว้ประมาณบรรทัดที่ 3
          excel.Workbooks(1).Worksheets(1).cells(3, 2).value = "สถานะ  " & labelStatus & "     " & "จากวันที : " & DateTimePicker_Start.Value.ToShortDateString() & "  " & "ถึงวันที่ : " & DateTimePicker_End.Value.ToShortDateString()

          'แล้วร่นหัวคอลัมภ์ไปประมาณบรรทัดที่ 5
           excel.Workbooks(1).Worksheets(1).cells(5, 1).value = "รหัสลูกค้า"
           excel.Workbooks(1).Worksheets(1).cells(5, 2).value = "รหัสงาน"
           excel.Workbooks(1).Worksheets(1).cells(5, 3).value = "วันที่รับงาน"
           excel.Workbooks(1).Worksheets(1).cells(5, 4).value = "ชื่อ"
           excel.Workbooks(1).Worksheets(1).cells(5, 5).value = "ตำบล"
           excel.Workbooks(1).Worksheets(1).cells(5, 6).value = "อำเภอ"
           excel.Workbooks(1).Worksheets(1).cells(5, 7).value = "จังหวัด"
           excel.Workbooks(1).Worksheets(1).cells(5, 8).value = "ผู้ประเมิน 1"
           excel.Workbooks(1).Worksheets(1).cells(5, 9).value = "ผู้ประเมิน 2"
           excel.Workbooks(1).Worksheets(1).cells(5, 10).value = "วันที่ส่งงาน"

       Next


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

Code (VB.NET)
 For i As Integer = 1 To col
           Hoja.Cells.Item(1, i) = dgv1.Columns(i - 1).Name.ToString

       Next

'อันนี้ไว้นอก Loop
           excel.Workbooks(1).Worksheets(1).cells(1, 1).value = "รายงานงานเสร็จแล้วตามวันที่"
          
          'แทรกโค้ดตรงนี้ ผมเอาไว้ประมาณบรรทัดที่ 3
          excel.Workbooks(1).Worksheets(1).cells(3, 2).value = "สถานะ  " & labelStatus & "     " & "จากวันที : " & DateTimePicker_Start.Value.ToShortDateString() & "  " & "ถึงวันที่ : " & DateTimePicker_End.Value.ToShortDateString()

          'แล้วร่นหัวคอลัมภ์ไปประมาณบรรทัดที่ 5
           excel.Workbooks(1).Worksheets(1).cells(5, 1).value = "รหัสลูกค้า"
           excel.Workbooks(1).Worksheets(1).cells(5, 2).value = "รหัสงาน"
           excel.Workbooks(1).Worksheets(1).cells(5, 3).value = "วันที่รับงาน"
           excel.Workbooks(1).Worksheets(1).cells(5, 4).value = "ชื่อ"
           excel.Workbooks(1).Worksheets(1).cells(5, 5).value = "ตำบล"
           excel.Workbooks(1).Worksheets(1).cells(5, 6).value = "อำเภอ"
           excel.Workbooks(1).Worksheets(1).cells(5, 7).value = "จังหวัด"
           excel.Workbooks(1).Worksheets(1).cells(5, 8).value = "ผู้ประเมิน 1"
           excel.Workbooks(1).Worksheets(1).cells(5, 9).value = "ผู้ประเมิน 2"
           excel.Workbooks(1).Worksheets(1).cells(5, 10).value = "วันที่ส่งงาน"



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

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

       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 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: Voake, Comcube, รับทำเว็บไซต์ รับเขียนโปรแกรม

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