vb.net datagridview 데이터 내보내기 Excel 구현

2310 단어
데이터 gridview 이 부분의 조작은 저에게 약간의 어려움이 있습니다. 먼저 SQL 서버에서 데이터를 조회하고 데이터 gridview에서 표시한 다음에 데이터 gridview에서 필드를 삭제합니다. 마지막으로 현재 데이터 gridview의 데이터를 Excel로 내보내는 과정은 모두 어려워 보입니다. 어려움에 부딪히면 끌고 끌기 쉬우나 어려움을 해결하지 못하면 거기에 있습니다.이제 데이터gridview의 데이터를 Excel로 내보내는 방법을 말해 보세요.
데이터gridview의 데이터를 Excel, 즉 디스플레이층으로 내보내는 작업은 업무 논리층과 데이터 접근층과 관련이 없고 비교적 쉬운 편이다.vb.net에서 이걸 실현하는 건 나로서는 낯설다.하지만 다 하고 나면 vb에서 엑셀을 내보내는 것과 비슷하다고 느낀다.
1. 참조 추가
우선 인용을 추가합니다. vb를 열 때.net에서 인용할 때 익숙하다. vb판 기계실을 두드릴 때 우리도 비슷한 인용을 추가했다. 아래의 두 그림을 보면 두 그림이 사실 큰 차이가 없다는 것을 알 수 있다.참조에서 Microsoft Excel 14.0 object library를 선택합니다.
                  
인용을 추가하려면 코드 창에 인용 대상의 코드를 추가하는 것이 필요합니다. 다음과 같습니다.
<span style="font-family:KaiTi_GB2312;font-size:24px;">    Imports Excel = Microsoft.Office.Interop.Excel</span>

2. 데이터gridview의 속성 수정
이 부분을 두드린 학생들은 데이터gridview의 Allow User ToAdd Rows의 속성을false로 바꾸지 않으면 코드가 실행될 때 오류가 발생한다는 것을 알고 있다.데이터gridview의 AllowUserToAddRows 속성은 데이터gridview의 기본 디스플레이 헤더를 보장하는 것이지 임의의 줄이 아닙니다.
3. 코드 부분
<span style="font-family:KaiTi_GB2312;font-size:24px;"> Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
</span>
<span style="font-family:KaiTi_GB2312;font-size:24px;"><span style="white-space:pre">	</span>Microsoft.Office.Interop.Excel.Application() '  
        Dim myExcel As New Excel.Application()
        myExcel.Application.Workbooks.Add(True)
        myExcel.Visible = True  
        Dim n As Integer
        For n = 0 To datagridview1.ColumnCount - 1
            myExcel.Cells(1,  n+ 1) = Me.datagridview1.Columns(n).HeaderText

        Next n

        ' Excel 
        Dim i As Integer
        For i = 0 To dgvMoney.RowCount - 1
            Dim j As Integer
            For j = 0 To datagridview1.ColumnCount - 1
                If Me.datagridview1(j, i).Value Is System.DBNull.Value Then
                    MyExcel.Cells(i + 2, j + 1) = ""
                Else
                    MyExcel.Cells(i + 2, j + 1) = datagridview1(j, i).Value.ToString
                End If

            Next j
        Next i
    End Sub</span>

좋은 웹페이지 즐겨찾기