如何将SQL数据写入Excel文件

时间:2014-02-05 01:36:03

标签: sql vb.net export-to-excel

我有一个基本的VB.net程序,它运行一个查询并将结果报告给一个消息框。我想做的是将结果报告给我的计算机上存在的excel spreasheet(C:\ Test.xls)。我想使用A1 (Item 0), A2 (Item1), and A3 (Item2)(单元格)来报告我从SQL命令中选择的3个项目。我怎样才能做到这一点?以下是我的代码:

Imports System.Data.SqlClient

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim connectionString As String
        Dim sqlCnn As SqlConnection
        Dim sqlCmd As SqlCommand
        Dim sql As String


        connectionString = "Data Source=10.0.1.1;Initial Catalog=Database;Persist Security Info=True;User ID=login;Password=password"
        sql = "select * from tickets where sticket_number = 'W408259'"

        sqlCnn = New SqlConnection(connectionString)
        Try
            sqlCnn.Open()
            sqlCmd = New SqlCommand(sql, sqlCnn)
            Dim sqlReader As SqlDataReader = sqlCmd.ExecuteReader()
            While sqlReader.Read()
                MsgBox(sqlReader.Item(0) & "  -  " & sqlReader.Item(1) & "  -  " & sqlReader.Item(2))
            End While
            sqlReader.Close()
            sqlCmd.Dispose()
            sqlCnn.Close()
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub
End Class

1 个答案:

答案 0 :(得分:0)

将数据写入现有Excel文件是最简单的任务。您需要使用microsoft.ace.oledb.<version>连接到Excel文件,就像它是一个数据库

这是连接字符串

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\myFolder\myExcel2007file.xlsx;Extended Properties="Excel 12.0 Xml;HDR=YES";

你会写到桌子上的表格,没有什么不同。

在这里,您将找到所有必要的代码示例

http://code.msdn.microsoft.com/windowsdesktop/Excel-Sheet-Helper-helper-4f433579