CARA: Transfer Data XML untuk Microsoft Excel 2002 dengan menggunakan Visual Basic.NET

Terjemahan Artikel Terjemahan Artikel
ID Artikel: 307021 - Melihat produk di mana artikel ini berlaku.
Perbesar semua | Perkecil semua

Pada Halaman ini

RINGKASAN

Excel 2002 memperkenalkan fungsi untuk membuka file dalam Extensible Markup Language (XML) format. Sebuah file XML yang well-formed dapat dibuka langsung di Excel 2002 atau Excel 2003 dengan menggunakan baik antarmuka pengguna atau kode.

Dengan Visual Basic.NET, Anda dapat mengambil keuntungan dari Excel XML fungsi mulus mentransfer data ke buku kerja untuk menyajikan data dengan format dan pengaturan pilihan Anda. Artikel ini menunjukkan bagaimana untuk menyelesaikan tugas ini.

Menghasilkan XML dari DataSet untuk digunakan dalam Excel 2002 atau Excel 2003

Bagian ini menggambarkan cara membuat DataSet objek dan ekspor data yang berisi file XML oleh menggunakan WriteXML metode. File XML yang dihasilkan dapat dibuka secara langsung di Excel. Untuk tujuan ilustrasi, DataSet objek dibuat dari Microsoft Access Northwind sampel database dengan menggunakan penyedia OLEDB Jet. Namun, kode yang sama bekerja dengan DataSet objek yang Anda buat dengan Visual Basic.NET.
  1. Mulai Microsoft Visual Studio.NET. Pada Berkas menu, klik Baru kemudian klik Project. Pilih Aplikasi Windows dari jenis proyek Visual Basic. Form1 dibuat oleh default.
  2. Pada Lihat menu, pilih Toolbox untuk menampilkan Toolbox dan menambahkan tombol ke Form1.
  3. Klik dua kali Button1. Jendela kode untuk bentuk muncul.
  4. Menambahkan variabel anggota pribadi berikut untuk Form1 kelas:
        Private strConn As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
                "C:\Program Files\Microsoft Office\Office10\Samples\Northwind.mdb;"
    					
    CATATAN: Anda mungkin perlu untuk mengubah jalan untuk Northwind.mdb dalam rangkaian sambungan untuk mencocokkan instalasi Anda.

  5. Tambahkan kode berikut untuk Button1_Click handler:
            'Connect to the data source.
            Dim objConn As New System.Data.OleDb.OleDbConnection(strConn)
    
            Try
            objConn.Open()
    
            'Fill a dataset with records from the Customers table.
            Dim strSQL As String
            Dim objDataset As New DataSet()
            Dim objAdapter As New System.Data.OleDb.OleDbDataAdapter()
            strSQL = "Select CustomerID, CompanyName, ContactName, " & _
                     "Country, Phone from Customers"
            objAdapter.SelectCommand = New System.Data.OleDb.OleDbCommand( _
                strSQL, objConn)
            objAdapter.Fill(objDataset)
    
            ' Create the FileStream to write with.
            Dim strFilename As String
            strFilename = "C:\Customers.xml"
            Dim fs As New System.IO.FileStream(strFilename, _
                System.IO.FileMode.Create)
    
            'Create an XmlTextWriter for the FileStream.
            Dim xtw As New System.Xml.XmlTextWriter(fs, _
                System.Text.Encoding.Unicode)
    
            'Add processing instructions to the beginning of the XML file, one 
            'of which indicates a style sheet.
            xtw.WriteProcessingInstruction("xml", "version='1.0'")
            'xtw.WriteProcessingInstruction( _
            '    "xml-stylesheet", "type='text/xsl' href='customers.xsl'")
    
            'Write the XML from the dataset to the file.
            objDataset.WriteXml(xtw)
            xtw.Close()
    
            MsgBox("Customer data has been exported to C:\Customers.xml.")
    
            Catch ex As Exception
                    MsgBox(ex.Message)
            End Try
    					
  6. Tekan F5 untuk membangun dan menjalankan program.
  7. Klik Button1 untuk membuat XML file, kemudian tutup Form1 untuk mengakhiri program.
  8. Mulai Excel 2002 atau Excel 2003 dan membuka C:\Customers.xml output file.
  9. Setelah Anda telah mengamati bagaimana XML telah diurai menjadi baris dan kolom di buku kerja yang baru, tutup berkas dan berhenti Excel.

Format XML menggunakan Stylesheet

Langkah ini menunjukkan kepada Anda bagaimana menggunakan stylesheet (XSL) untuk mengubah Bagaimana XML data diformat dan diatur dalam buku kerja Excel.
  1. Menggunakan editor HTML apapun atau editor teks (seperti Notepad.exe), Simpan XSL berikut sebagai C:\Customers.xsl:
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
      <xsl:template match="/">
        <HTML>
          <HEAD>
            <STYLE>   
              .HDR { background-color:bisque;font-weight:bold }
            </STYLE>
          </HEAD>
          <BODY>
            <TABLE>
              <COLGROUP WIDTH="100" ALIGN="CENTER"></COLGROUP>
              <COLGROUP WIDTH="200" ALIGN="LEFT"></COLGROUP>
              <COLGROUP WIDTH="200" ALIGN="LEFT"></COLGROUP>
              <COLGROUP WIDTH="100" ALIGN="LEFT"></COLGROUP>
              <COLGROUP WIDTH="100" ALIGN="LEFT"></COLGROUP>
              <TD CLASS="HDR">Customer ID</TD>
              <TD CLASS="HDR">Company</TD>
              <TD CLASS="HDR">Contact</TD>
              <TD CLASS="HDR">Country</TD>
              <TD CLASS="HDR">Phone</TD>
              <xsl:for-each select="NewDataSet/Table">
                <TR>
                  <TD><xsl:value-of select="CustomerID"/></TD>
                  <TD><xsl:value-of select="CompanyName"/></TD>
                  <TD><xsl:value-of select="ContactName"/></TD>
                  <TD><xsl:value-of select="Country"/></TD>
                  <TD><xsl:value-of select="Phone"/></TD>
                </TR>
              </xsl:for-each>
            </TABLE>
          </BODY>
        </HTML>
      </xsl:template>
    </xsl:stylesheet> 
    					
  2. Tanda komentar berikut baris kode di Button1_Click handler:
            xtw.WriteProcessingInstruction( _
                "xml-stylesheet", "type='text/xsl' href='customers.xsl'")
    					
    Baris kode menulis petunjuk pemrosesan XML file yang Excel menggunakan untuk menemukan stylesheet (Customers.xsl).

  3. Tekan F5 untuk membangun dan menjalankan program.
  4. Klik Button1 untuk membuat XML file, kemudian tutup Form1 untuk mengakhiri program.
  5. Mulai Excel 2002 atau Excel 2003 dan membuka C:\Customers.xml output file.
  6. Karena Excel melihat petunjuk pemrosesan untuk stylesheet dalam XML, Anda menerima prompt kotak dialog saat Anda membuka berkas. Dalam Impor XML kotak dialog, pilih Buka file dengan stylesheet berikut yang diterapkan. Dalam daftar, pilih Customers.XSL dan klik Oke. Perhatikan bahwa XML data diformat dan bahwa kolom memiliki telah disusun menurut stylesheet.
  7. Tutup file dan berhenti Excel.

Gunakan kode untuk membuka XML berubah

Hingga saat ini, Anda telah membuka XML file dengan menggunakan pengguna antarmuka di Excel. Bagian ini menunjukkan bagaimana untuk mengotomatisasi Excel untuk membuka buku kerja pemrograman. Contoh berikut menggambarkan cara untuk membuka berubah XML tanpa campur tangan pengguna dengan mengubah XML di DataSet objek ke HTML.
  1. Dalam Visual Basic.NET proyek, menambahkan tombol lain untuk Form1.
  2. Klik dua kali Button2. Ketika jendela kode untuk bentuk muncul, tambahkan berikut kode untuk Button2_Click handler:
            'Connect to the data source.
            Dim objConn As New System.Data.OleDb.OleDbConnection(strConn)
            objConn.Open()
    
            'Fill a dataset with records from the Customers table.
            Dim strSQL As String
            Dim objDataset As New DataSet()
            Dim objAdapter As New System.Data.OleDb.OleDbDataAdapter()
            strSQL = "Select CustomerID, CompanyName, ContactName, " & _
                     "Country, Phone from Customers"
            objAdapter.SelectCommand = New System.Data.OleDb.OleDbCommand( _
                strSQL, objConn)
            objAdapter.Fill(objDataset)
    
            ' Create the FileStream to write with.
            Dim strFilename As String
            strFilename = "C:\Customers.htm"
            Dim fs As New System.IO.FileStream(strFilename, _
                System.IO.FileMode.Create)
    
            'Create an XmlTextWriter for the FileStream.
            Dim xtw As New System.Xml.XmlTextWriter(fs, _
                System.Text.Encoding.Unicode)
    
            'Transform the XML using the stylesheet.
            Dim xmlDoc As System.Xml.XmlDataDocument = _
                New System.Xml.XmlDataDocument(objDataset)
            Dim xslTran As System.Xml.xsl.XslTransform = _
                New System.Xml.Xsl.XslTransform()
            xslTran.Load("c:\customers.xsl")
            xslTran.Transform(xmlDoc, Nothing, xtw)
    
            'Write the transformed XML to the file.
            objDataset.WriteXml(xtw)
            xtw.Close()
    
            'Start Excel and open the resulting file.
            Dim oExcel As Object
            oExcel = CreateObject("Excel.Application")
            oExcel.Workbooks.Open("C:\Customers.htm")
    
            'Make Excel visible and give the user control of the application.
            oExcel.Visible = True
            oExcel.UserControl = True
    					
  3. Tekan F5 untuk membangun dan menjalankan program.
  4. Klik Button2 untuk membuka XML berubah dalam Microsoft Excel.
CATATAN: Sementara Excel 2002 dan Excel 2003 Object Model mengekspos OpenXML metode yang memungkinkan Anda untuk membuka sebuah file XML dengan pemrograman stylesheet diterapkan, contoh sebelumnya tidak memanggil metode ini karena masalah diketahui dengan menggunakan metode ini dari klien otomasi. The OpenXML metode bekerja seperti yang diharapkan ketika disebut dari Excel makro; Namun, ketika metode ini disebut dari klien otomasi StyleSheet parameter akan diabaikan. Untuk tambahan informasi, klik nomor artikel di bawah ini untuk melihat artikel di Basis Pengetahuan Microsoft:
307230 BUG: Stylesheet Parameter OpenXML metode diabaikan ketika mengotomatisasi Excel 2002

REFERENSI

Untuk informasi lebih lanjut, lihat basis pengetahuan berikut Artikel:
288215 INFO: Microsoft Excel 2002 dan XML
301982 HOWTO: Mengotomatisasi Microsoft Excel dari Visual Basic.NET
306022 CARA: Mentransfer Data ke buku kerja Excel dengan menggunakan Visual Basic.NET
285891 HOWTO: Menggunakan Visual Basic atau ASP untuk membuat XML Spreadsheet Excel 2002
320369 BUG: "Old Format atau tidak sah perpustakaan jenis" kesalahan saat mengotomatiskan Excel 2002

Properti

ID Artikel: 307021 - Kajian Terakhir: 24 September 2011 - Revisi: 2.0
Berlaku bagi:
  • Microsoft Visual Basic .NET 2002 Standard Edition
  • Microsoft Excel 2002 Standard Edition
Kata kunci: 
kbhowtomaster kbmt KB307021 KbMtid
Penerjemahan Mesin
PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.
Klik disini untuk melihat versi Inggris dari artikel ini:307021

Berikan Masukan

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com