İstemci tarafında görüntüleme için XML biçiminde elektronik tablo oluşturulurken ASP nasıl kullanılır

Ö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:288130
Özet
Bu makalede, Office Elektronik Tablo Bileşeni'ni kullanarak, elektronik tablonun XML elektronik tablosu (XMLSS) biçiminde oluşturur Microsoft Active Server Pages (ASP) komut dosyası gösterilmektedir. XMLSS birkaç yoldan biriyle görüntülenen istemci tarafında olabilir:
  • Bir Web sayfasında elektronik tablo bileşeninin
  • Microsoft Excel'in gösterilen yerinde tarayıcı
  • Doğrudan Microsoft Excel'de açılır.
Daha fazla bilgi
Elektronik Tablo bileşeni, elektronik tabloları oluşturmak için sunucu tarafı kod kullanarak, daha fazla Microsoft Excel, sunucu tarafında Otomasyon kullanmaya kıyasla daha iyi performans ve ölçeklenebilirlik sağlar. Biz, Excel, sunucuda dahil değil recomment Office Otomasyonu uygulamaları yapın. Bu yöntem, aynı sonuçları sağlandığı için diğer seçenekler için kullanılabilir olduğunda kaçınılmalıdır. XMLSS hem de elektronik tablo bileşeni ve Microsoft Excel için genel özelliklerin geçerli. Bu özellikler, bazı, Multi-Sheet çalışma kitaplarını, hücre biçimlendirme, otomatik filtre, Hücre formüllerini ve re-calculation temsil eder. Elektronik Tablo bileşeni, nesne modeli, Microsoft Excel için yakın eşleşen nesne modeli vardır. Excel nesne modeliyle biliyorsanız, bu nedenle, kolayca bazı varolan Excel kodunuzu, elektronik tablo bileşeni ile kullanmak için değişikliği uygulayabilirsiniz.

Aşağıdaki örnek, elektronik tablo bileşeni, ASP ile kullanma XMLSS multi-sheet bir çalışma kitabı oluşturmak gösterilmiştir. Web sayfasına veya Microsoft Excel'de sonuç XMLSS istemci-tarafı nasıl görüntüleyebilir, örnek de anlatılır.

ASP komut dosyası, Elektronik Tablo Bileşeni'ni kullanarak XMLSS oluşturmak için

Aşağıdaki ASP, Web sunucunuz sanal kök dizinde XMLSS.asp kaydedin. Varsayılan olarak, C:\inetpub\wwwroot kök dizinidir.
<% Language=VBScript %><%    Response.Buffer = True    Response.ContentType = "text/xml"    Dim NumOrders, NumProds, r    NumOrders = 300    NumProds = 10            Dim oSS    Dim oOrdersSheet    Dim oTotalsSheet    Dim oRange    Dim c        Set oSS = CreateObject("OWC10.Spreadsheet")    Set c = oSS.Constants    'Rename Sheet1 to "Orders", rename Sheet2 to "Totals" and remove Sheet3    Set oOrdersSheet = oSS.Worksheets(1)    oOrdersSheet.Name = "Orders"    Set oTotalsSheet = oSS.Worksheets(2)    oTotalsSheet.Name = "Totals"    oSS.Worksheets(3).Delete        '=== Build the First Worksheet (Orders) ==============================================            'Add headings to A1:F1 of the Orders worksheet and apply formatting    Set oRange = oOrdersSheet.Range("A1:F1")    oRange.Value = Array("Order Number", "Product ID", "Quantity", "Price", "Discount", "Total")    oRange.Font.Bold = True    oRange.Interior.Color = "Silver"    oRange.Borders(c.xlEdgeBottom).Weight = c.xlThick    oRange.HorizontalAlignment = c.xlHAlignCenter       'Apply formatting to the columns    oOrdersSheet.Range("A:A").ColumnWidth = 20    oOrdersSheet.Range("B:E").ColumnWidth = 15    oOrdersSheet.Range("F:F").ColumnWidth = 20    oOrdersSheet.Range("A2:E" & NumOrders + 1 _        ).HorizontalAlignment = c.xlHAlignCenter    oOrdersSheet.Range("D2:D" & NumOrders + 1).NumberFormat = "0.00"    oOrdersSheet.Range("E2:E" & NumOrders + 1).NumberFormat = "0 % "    oOrdersSheet.Range("F2:F" & NumOrders + 1).NumberFormat = "$ 0.00" '"_($* #,##0.00_)"            'Obtain the order information for the first five columns in the Orders worksheet    'and populate the worksheet with that data starting at row 2    Dim aOrderData    aOrderData = GetOrderInfo    oOrdersSheet.Range("A2:E" & NumOrders + 1).Value = aOrderData        'Add a formula to calculate the order total for each row and format the column    oOrdersSheet.Range("F2:F" & NumOrders + 1).Formula = "=C2*D2*(1-E2)"        oOrdersSheet.Range("F2:F" & NumOrders + 1).NumberFormat = "_(  $* #,##0.00   _)"    'Apply a border to the used rows    oOrdersSheet.UsedRange.Borders(c.xlInsideHorizontal).Weight = c.xlThin    oOrdersSheet.UsedRange.BorderAround , c.xlThin, 15        'Turn on AutoFilter and display an initial criteria where    'the Product ID (column 2) is equal to 5    oOrdersSheet.UsedRange.AutoFilter    oOrdersSheet.AutoFilter.Filters(2).Criteria.FilterFunction = c.ssFilterFunctionInclude    oOrdersSheet.AutoFilter.Filters(2).Criteria.Add "5"    oOrdersSheet.AutoFilter.Apply        'Add a Subtotal at the end of the usedrange    oOrdersSheet.Range("F" & NumOrders + 3).Formula = "=SUBTOTAL(9, F2:F" & NumOrders + 1 & ")"        'Apply window settings for the Orders worksheet    oOrdersSheet.Activate   'Makes the Orders sheet active    oSS.Windows(1).ViewableRange = oOrdersSheet.UsedRange.Address    oSS.Windows(1).DisplayRowHeadings = False    oSS.Windows(1).DisplayColumnHeadings = False    oSS.Windows(1).FreezePanes = True    oSS.Windows(1).DisplayGridlines = False        '=== Build the Second Worksheet (Totals) ===========================================        'Change the Column headings and hide row headings    oTotalsSheet.Activate    oSS.Windows(1).ColumnHeadings(1).Caption = "Product ID"    oSS.Windows(1).ColumnHeadings(2).Caption = "Total"    oSS.Windows(1).DisplayRowHeadings = False        'Add the product IDs to column 1    Dim aProductIDs    aProductIDs = GetProductIDs    oTotalsSheet.Range("A1:A" & NumProds).Value = aProductIDs    oTotalsSheet.Range("A1:A" & NumProds).HorizontalAlignment = c.xlHAlignCenter    'Add a formula to column 2 that computes totals per product from the Orders Sheet    oTotalsSheet.Range("B1:B" & NumProds).Formula = _        "=SUMIF(Orders!B$2:B$" & NumOrders + 1 & ",A1,Orders!F$2:F$" & NumOrders + 1 & ")"    oTotalsSheet.Range("B1:B" & NumProds).NumberFormat = "_(  $* #,##0.00   _)"    'Apply window settings for the Totals worksheet    oSS.Windows(1).ViewableRange = oTotalsSheet.UsedRange.Address        '=== Setup for final presentation ==================================================        oSS.DisplayToolbar = False    oSS.AutoFit = True    oOrdersSheet.Activate    Response.Write oSS.XMLData    Response.EndFunction GetOrderInfo()    ReDim aOrderInfo(NumOrders,5)    Dim aPrice, aDisc    aPrice = Array(10.25, 9.5, 2.34, 6.57, 9.87, 4.55, 6, 13.05, 3.3, 5.5)    aDisc = Array(0, 0.1, 0.15, 0.2)    For r = 0 To NumOrders-1        aOrderInfo(r, 0) = "'" & String(7-Len(CStr(r+1)), "0") & r+1 'Col 1 is Order Number        aOrderInfo(r, 1) = Int(Rnd() * NumProds) + 1                 'Col 2 is Product ID        aOrderInfo(r, 2) = Int(Rnd() * 20) + 1                       'Col 3 is Quantity        aOrderInfo(r, 3) = aPrice(aOrderInfo(r, 1)-1)                'Col 4 is Price        aOrderInfo(r, 4) = aDisc(Int(Rnd() * 4))                     'Col 5 is Discount    Next    GetOrderInfo = aOrderInfoEnd FunctionFunction GetProductIDs()    ReDim aPIDs(NumProds, 1)    For r = 0 To NumProds-1        aPIDs(r, 0) = r+1    Next    GetProductIDs = aPIDsEnd Function%>				

XMLSS Web sayfasında görüntüler.

XMLSS örnek bir Web sayfası üzerinde görüntülemek için <a0></a0>, yalnızca XMLURL özelliği URL'ye elektronik tablo bileşeni için ASP için aşağıdaki şekilde ayarlamanız gerekir:
<html><body><object classid="clsid:0002E551-0000-0000-C000-000000000046" id="Spreadsheet1">  <param name="XMLURL" value="http://YourWebServer/xmlss.asp"></object></body></html>				
Not Microsoft Office 2003 kullanıyorsanız, yukarıdaki koduna uygun olarak SınıfKimliği değiştirmeniz gerekebilir.

Önceki HTML biçiminde bir <param>kullanarak XMLURL bu özelliğin ayarlanması etiketi. Çalışma zamanında aşağıdaki kodu kullanarak isterseniz, XMLURL özelliğini ayarlayabilirsiniz.
   Spreadsheet1.XMLURL = "http://YourWebServer/xmlss.asp"				

Microsoft Excel'de XMLSS görüntüleme

Microsoft Excel'de, elektronik tablo bileşeni ile oluşturulan XMLSS açılabilir. Biçimlendirmeleri ve özellikleri elektronik tablo bileşeninin uygulamak için Microsoft Excel'le paylaşılabilir. Elektronik Tablo bileşeni, Excel'in yapan bazı özelliklerini destekler. Ayrıca, Excel, elektronik tablo bileşeninin yapan bazı özelliklerini destekler. XMLSS açıldığında, herhangi bir XML etiketleri veya Excel'in değil uygulamak öznitelikleri göz ardı edilir.

Microsoft Excel'de, örnek ASP komut dosyası sonuçlarını görüntülemek için <a0></a0>, aşağıdaki adımları izleyin:
  1. Microsoft Excel'i başlatın.
  2. Dosya menüsünden ' ı tıklatın.
  3. Dosya adı kutusuna, http://YourWebServer/xmlss.asp yazın ve sonra da ' ı tıklatın.
Çalışma kitabını inceleyin ve Excel'de açıldığında verileri ve çalışma zamanında uygulanan biçimleri çalışma kitabındaki tüm bulunduğunu unutmayın. Bir istisna vardır: çünkü bu özelliği değil paylaşan Microsoft Excel elektronik tablo bileşeni elektronik tablo bileşeniyle oluşturulan başlık başlıkları Excel'e gerçekleştirmek değil. Dosyayı Excel'de görüntülemek amacıyla, Elektronik Tablo Bileşeni'ni kullanarak XMLSS oluşturursanız, farklı özellikleri unutmayın her destekler.

ASP tarafından oluşturulan XMLSS Microsoft Excel'de açmak için başka bir Excel çok amaçlı ınternet Posta Uzantıları (MIME) türü olarak, ASP ContentType vermesini yoludur. Excel MIME türünü kullanmak için ASP göz, Microsoft Excel'in yerinde tarayıcıda bulunan XMLSS işlenip. Bunu yapmak için şu adımları izleyin:
  1. XMLSS.asp bir metin düzenleyicisinde açın.
  2. Komut dosyasında aşağıdaki satırı değiştirin:
    Response.ContentType = "text/xml"					
    , aşağıdakine benzer bir kod satırı değiştirin:
    Response.ContentType = "application/vnd.ms-excel"					
  3. XMLSS.asp için yaptığınız değişiklikleri kaydedin ve sonra Windows ınternet Explorer'ı başlatın.
  4. Http://YourWebServer/XMLSS.ASP için göz atın. XML elektronik tablo, Microsoft Excel'in barındırılan yerinde tarayıcıda oluşturulur.
Referanslar
Daha fazla bilgi için Office Web bileşenleri konu aşağıdaki Microsoft Web sitesini ziyaret edin: Daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleleri görüntülemek üzere aşağıdaki makale numaralarını tıklatın:
285891Excel 2002 ve Excel 2003, XML elektronik tablo oluşturmak için Visual Basic'in veya bir ASP kullanma
278976Sunucu tarafı kullanım için Excel XML elektronik tabloya dönüştürmek için XSL nasıl kullanılır
257757Sunucu tarafında Office Otomasyonu ile ilgili konular
xl2003 XL2007

Uyarı: Bu makalenin çevirisi otomatik olarak yapılmıştır

Özellikler

Makale No: 288130 - Son İnceleme: 05/14/2007 21:51:06 - Düzeltme: 5.2

Microsoft Office 2003 Web Components, Microsoft Office XP Web Components, Microsoft Office Excel 2007, Microsoft Office Excel 2003, Microsoft Excel 2002 Standard Edition, Microsoft Active Server Pages 4.0

  • kbmt kbhowto kbofficewebspread KB288130 KbMttr
Geri bildirim