Microsoft Excel 2002 ve Microsoft Office Excel 2003, bunlar hem yüklenemedi ve kaydedebilirsiniz (veya XML elektronik tabloları) çalışma kitaplarını XML biçimini destekler. Bu XML Elektronik Tablo biçimini kullanarak, multi-sheet, oluşturabileceğiniz Automation'ı kullanmadan, Excel çalışma kitaplarına biçimlendirilmiş. Bir Excel oluşturmak istediğinizde bu yaklaşım istenebilir çalışma kitabında, ancak Excel otomatikleştirmek için uygun değil (gibi bir Web sunucusunda veya bir hizmetten) veya Excel'in kodunuzu çalıştırdığı sistemde yüklü değil.
Bu makalede, nasıl bir XML şablonu, Genişletilebilir Stil Sayfası Dili (XSL) dönüştürme ile kullanıldığında oluşturabileceğinizi göstermektedir, doğrudan Excel'de açılabilir biçimlendirilmiş bir çalışma kitabı oluşturur. XML dönüşüm Active Server Pages (ASP) ve Visual Basic için gösterilmiştir. Ile ilgili olarak Visual Basic kod örneği, elektronik tablo verilerini, yalnızca XML/XSL ile oluşturulur; en az bir Otomasyon sonuçları Excel'de açmak için kullanılır.
Not Bu makalede açıklanan örnek kullanılabilir karşıdan yükleme; karşıdan yükleme yönergeleri için bu makalenin sonunda yükleme bölümüne bakın.
Excel'de, yeni bir çalışma kitabı başlatın. Aşağıdaki verileri, belirtilen hücreleri çalışma kitabındaki hücreleri A1:F2 ekleyin. Hücre F2 bir formülü olarak girilmelidir.
A1: Order ID B1: Product ID C1: Unit Price D1: Quantity E1: Discount F1: Total
A2: aaa B2: 111 C2: 222 D2: 333 E2: 0 F2: =C2*D2*(1-E2)
F3 hücresine aşağıdaki formülü yazın:
=sum(f$2:f2)
Hücreleri A1:F1 seçin. Biçim menüsünden Hücreler ' i tıklatın. Kalın yazı tipi, alt kenarlık ve hücre gölgelendirme için düz bir renk uygulanır. Tamam ' ı tıklatın.
A:F. Biçim menüsünden Sütunlar'ı seçin, sütun ' u işaret edin ve sonra da Genişlik ' i tıklatın. 15 Yeni sütun genişliğini yazın ve Tamam ' ı tıklatın. Sütunları A:F, Biçim menüsünden Seçili Hücreler ' i tıklatın. Hizalama sekmesinde, yatay hizalamayı listeden Center ' ı tıklatın ve sonra Tamam ' ı tıklatın.
E sütunu seçin. Biçim menüsünden Hücreler ' i tıklatın. Sayı sekmesinde yüzde ' yi tıklatın, 0 ondalık belirtin ve sonra Tamam ' ı tıklatın.
F sütunu seçin. Biçim menüsünden Hücreler ' i tıklatın. Sayı sekmesindeki Hesap ' ı tıklatın ve sonra Tamam ' ı tıklatın.
Hücreleri A3:F3 seçin. Biçim menüsünden, Satır yüksekliği ' ı tıklatın, 25 yazın ve Tamam ' ı tıklatın. A3:F3 hala seçili, Biçim menüsünden Hücreler ' i tıklatın. Üst Kenarlık hücrelere ve Tamam ' ı tıklatın.
Araçlar menüsünden Seçenekler ' i tıklatın. Görünüm sekmesinde <a0>kılavuz çizgileri</a0> onay kutusunu temizleyin ve Tamam ' ı tıklatın.
Dosya menüsünden farklı Kaydet ' i tıklatın. Oluşturduğunuz C:\ExcelXML klasöre göz atın ve çalışma kitabı "Orders.xsl" XML elektronik tablo biçiminde kaydedin.
Not: .xml uzantısı, dosya adına eklenir böylece dosya adı kutusuna Kaydet iletişim kutusunda dosya adı çift tırnak içine alın.
Excel'den çıkın.
Orders.xsl, Not Defteri gibi herhangi bir metin düzenleyicisinde açın.
Aşağıdaki arasında ekleme <? xml sürüm = "1.0"? > etiketi ve <workbook>etiketi:
Orders.xsl için değişikliklerinizi kaydedip dosyayı kapatın.
Bir XML devam eden bir ADO kayıt kümesini bir XML elektronik tabloya dönüştürmek için Visual Basic'i kullanın.
Visual Basic'te, yeni bir standart exe DOSYASı oluşturma proje.
Proje menüsünde Başvurular ' ı tıklatın. Tür kitaplıkları (Microsoft ActiveX veri nesnesi 2.5 veya sonraki) ve Microsoft XML 3. 0 ' ı seçin.
Form1'e bir KomutDüğmesi ekleyin ve bu düğmenin tıklatma için aşağıdaki kodu ekleyin olay:
Const sConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
"C:\program files\microsoft office\office10\samples\Northwind.mdb"
Const sOutXML = "C:\ExcelXML\Orders.xml"
Const sXSL = "C:\ExcelXML\Orders.xsl"
'Retrieve an ADO recordset of the Orders Detail table in Northwind.
Dim nRecords As Long, nFields As Long
Dim rs As New ADODB.Recordset
rs.Open "SELECT * FROM [Order Details]", sConn, adOpenStatic, adLockOptimistic
'Persist the recordset to a new DOMDocument and store the record count.
Dim oXML As New DOMDocument
rs.Save oXML, adPersistXML
nRecords = rs.RecordCount
nFields = rs.Fields.Count
rs.Close
'Load the XSL (the workbook template with XSL directives) into a DOMDocument.
Dim oXSL As New DOMDocument
oXSL.Load sXSL
'Transform the XML using the style sheet.
Dim oResults As New DOMDocument
oXML.transformNodeToObject oXSL, oResults
If oXSL.parseError.errorCode <> 0 Then
MsgBox "Parse Error: " & oResults.parseError.reason
Else
'Modify the ss:ExpandedRowCount attribute for the <table> node to
'indicate the correct number of rows (count of records + 1 row for
'the header + 1 row for the total).
Dim oTable As MSXML2.IXMLDOMElement
Set oTable = oResults.selectSingleNode("Workbook/Worksheet/Table")
oTable.setAttribute "ss:ExpandedRowCount", nRecords + 2
'***************************************
'Save the results to a file.
Open sOutXML For Output As #1
Print #1, oResults.xml
Close #1
'Open the XML in Excel.
Dim oExcel As Object
Set oExcel = CreateObject("Excel.Application")
oExcel.Workbooks.Open sOutXML
oExcel.Visible = True
oExcel.UserControl = True
'***************************************
End If
Not gerektiği, bağlantıyı değiştirmek (sabit sConn) dize, Access Northwind örnek doğru yükleme yolunu içeren veritabanı.
Programı çalıştırmak için F5 tuşuna basın.
Form1 düğmesini tıklatın. Verileri siparişler ayrıntı Northwind veritabanındaki bir tabloyu oluşturduğunuz Excel çalışma kitabı şablonu görünür.
Örnek XML olarak yeni bir çalışma kitabını açmak için çalışma kitaplarını topluluğunun <a2>Aç</a2> yöntemini kullanarak Excel otomatikleştirir ve XML elektronik tablosu oluşturur. Diğer bir yaklaşım XML belirli bir hücreden varolan bir çalışma sayfasına doğrudan ekleyebilirsiniz. Göstermek için <a0></a0>, aşağıdaki yıldız işaretleri arasında yer alan kodunu değiştir:
'Display the data in a workbook starting at cell B2.
Dim oExcel As Object, oBook As Object
Set oExcel = CreateObject("Excel.Application")
Set oBook = oExcel.Workbooks.Add
oBook.Worksheets(1).Range("B2").Resize(nRecords + 2, nFields + 1).Value(11) = _
oResults.xml 'Note: xlRangeValueXMLSpreadsheet=11
oExcel.Visible = True
oExcel.UserControl = True
bu değişikliği yaptıktan sonra programı yeniden çalıştırın. Bu kez, ilk çalışma sayfasının B2 hücresinden başlayarak yeni bir çalışma kitabına XML elektronik tablo verilerini yerleştirilmiş olduğunu unutmayın. Hücre veri ve biçimleri aralığa uygulanır; ancak, bu yaklaşım kullanarak satır, sütun, çalışma ve çalışma kitabı için özel ayarları taşınan değil.
Bir XML devam eden bir ADO kayıt kümesini bir XML elektronik tabloya dönüştürmek için ASP kullanma
Aşağıdaki kodu Not Defteri'ne yapıştırın. Kod, Web sunucusu. Not varsayılan sanal kök klasörü sanal kök klasöründe ExcelXML.asp C:\inetpub\wwwroot olarak kaydedin.
<%@ Language="vbscript"%>
<%
Const sConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\program files\microsoft office\office10\samples\Northwind.mdb"
Const sXSL = "C:\ExcelXML\Orders.xsl"
Response.Buffer = True
'Retrieve an ADO recordset of the Orders Detail table in Northwind.
Dim rs, nRecords
Set rs = CreateObject("ADODB.Recordset")
rs.Open "SELECT * FROM [Order Details]", sConn, 3, 3
'Persist the recordset to a new DOMDocument and store the record count.
Dim oXML
Set oXML = CreateObject("Microsoft.XMLDOM")
rs.Save oXML, 1
nRecords = rs.RecordCount
rs.Close
'Load the XSL (the workbook template with XSL directives) into a DOMDocument.
Dim oXSL
Set oXSL = CreateObject("Microsoft.XMLDOM")
oXSL.Load sXSL
'Transform the XML using the style sheet.
Dim oResults
Set oResults = CreateObject("Microsoft.XMLDOM")
oXML.transformNodeToObject oXSL, oResults
If oXSL.parseError.errorCode <> 0 Then
Response.Write "Parse Error: " & oResults.parseError.reason
Else
'Modify the ss:ExpandedRowCount attribute for the <table> node in the XSL.
Dim oTable
Set oTable = oResults.selectSingleNode("Workbook/Worksheet/Table")
oTable.setAttribute "ss:ExpandedRowCount", nRecords + 2
'Return the resulting XML Spreadsheet for display in Excel.
Response.ContentType = "application/vnd.ms-excel"
Response.Charset = "ISO-8859-1"
Response.Write oResults.XML
Response.Flush
End If
%>
Not gerektiği, bağlantıyı değiştirin (sabit sConn) dize, Access Northwind örnek doğru yükleme yolunu içeren veritabanı.
ınternet Explorer'ı başlatın ve http:// YourWebServer için gözatın / ExcelXML.asp, burada YourWebServer Web sunucunuzun adıdır. Verileri siparişler ayrıntı Northwind veritabanındaki bir tabloyu oluşturduğunuz Excel çalışma kitabı şablonu görünür.
Ek notlar
Aşağıdaki Excel özellikleri, XML ile olamıyor elektronik tablo biçimi:
Grafikler
OLE nesneleri
Çizim şekilleri veya Otomatik Şekiller
VBA projeleri
Grup ve anahat
Yükle
XMLSpread.exe XML stil, Visual Basic projesinin ve bu makalede açıklanan ASP komut dosyası içerir. Aşağıdaki dosya Microsoft Yükleme Merkezi'nden yüklenebilir:
Bu resmi kapatBu resmi aç
Download the Xmlsprd.exe package now.
(http://download.microsoft.com/download/excel2002/other/1.0/win98me/en-us/xmlsprd.exe)
Yayım Tarihi: Mart 27, 2001
Microsoft Destek dosyalarını karşıdan yükleme hakkında daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
119591
(http://support.microsoft.com/kb/119591/
)
Microsoft Destek Dosyaları Çevrimiçi Hizmetler'den Nasıl Alınır
Microsoft bu dosyada virüs taraması yapmıştır. Microsoft, dosyanın kullanıma sunulduğu tarihteki en güncel virüs tarama yazılımını kullanmıştır. Dosya, üzerinde herhangi bir yetkisiz değişiklik yapılmasını engellemeye yardım eden geliştirilmiş güvenliğe sahip sunucularda depolanır.
ADO kayıt kümesi XML biçiminde kaydetme hakkında daha fazla bilgi için biçimlendirmek için aşağıdaki Microsoft Developer Network (MSDN) Web sitesine bakın:
Microsoft Office MIME içeriği akış hakkında daha fazla bilgi için uygulamalar Microsoft Knowledge Base'deki makaleleri görüntülemek üzere aşağıdaki makale numaralarını tıklatın:
266263
(http://support.microsoft.com/kb/266263/
)
Hata: Word 2000 ve Excel 2000 ASP kaynağını akış verileri için MIME türü kullanılırken görüntülemek
199841
(http://support.microsoft.com/kb/199841/
)
ASP sonuçları Excel kullanılarak IE'de MIME türleriyle nasıl görüntülenir
271572
(http://support.microsoft.com/kb/271572/
)
MIME İçeriği Akış Olarak Gönderilirken Excel Çalışma Kitabı Nasıl Biçimlendirilir
307021
(http://support.microsoft.com/kb/307021/
)
Nasıl yapılır: Visual Basic. NET'i kullanarak, XML verilerini Microsoft Excel 2002'ye aktarma
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:285891
(http://support.microsoft.com/kb/285891/en-us/
)
Bu makaleyi kullanmak için ne kadar kişisel çaba harcadınız?
Çok az
Az
Orta
Fazla
Çok fazla
Bu bilgiyi geliştirmemiz için nedenleri ve bu konuda neler yapabileceğimizi paylaşın
Teşekkürler! Görüşleriniz, destek içeriğimizi geliştirmemize yardımcı olmak için kullanılmaktadır. Diğer yardım seçenekleri için, lütfen Yardım ve Destek Giriş Sayfasını ziyaret edin.