ExcelADO, Excel çalışma kitaplarındaki verileri okumak ve yazmak için ADO'nun nasıl kullanılacağını gösterir

Makale çevirileri Makale çevirileri
Makale numarası: 278973 - Bu makalenin geçerli olduğu ürünleri görün.
Hepsini aç | Hepsini kapa

Özet

ExcelADO.exe örnek nasıl, ActiveX Data Objects (ADO) Microsoft Jet OLE DB 4.0 Provider ile veri Microsoft Excel çalışma kitaplarında okuyup kullanımı gösterilmektedir.

Daha fazla bilgi

Aşağıdaki dosya Microsoft Yükleme Merkezi'nden yüklenebilir:
ExcelADO.exe
Yayım Tarihi: Aralık 12, 2000

Microsoft destek dosyalarını karşıdan yükleme konusunda ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
119591Microsoft 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.

Neden ADO kullanılır?

Veri aktarma veya bir Excel çalışma kitabından veri almak için ADO kullanımı, Excel'e, geliştirici, otomasyon birkaç avantaj sağlar:
  • Performans. Microsoft Excel, bir işlem dışı ActiveX sunucusudur. ADO, işlem içi olarak çalışır ve pahalı bir işlem dışı aramalarının yükü kaydeder.
  • Ölçeklenebilirlik. Web uygulamaları için her zaman Microsoft Excel'in otomatik hale getirmek için uygun değildir. ADO bir çalışma kitabındaki verileri işlemek için daha ölçeklenebilir bir çözüm sunar.
ADO, kesinlikle bir çalışma kitabına ham veri aktarmak için kullanılabilir. Biçimler veya formüllerin hücrelere uygulamak için ADO'ni kullanamazsınız. Ancak, pre-formatted bir çalışma kitabına veri aktarımı ve biçimi korunur. Veriler girildikten sonra "koşullu" biçimlendirme gerektiriyorsa, bu çalışma kitabında bir makro veya Otomasyon ile biçimlendirme yapabilirsiniz.

Excel çalışma kitapları için Jet OLE DB sağlayıcısı özellikleri

Microsoft Jet veritabanı alt yapısı yüklenebilir dizili sıralı erişim yöntemi (ISAM) sürücüleri veriye çalışma kitaplarını Excel gibi diğer veritabanı dosya biçimlerinde kullanılabilir. Microsoft Jet 4.0 OLE DB sağlayıcı tarafından desteklenen bir dış biçimler'i açmak için bağlantı için genişletilmiş özelliklerinde veritabanı türünü belirtin. Jet OLE DB sağlayıcısı, Microsoft Excel çalışma kitapları için aşağıdaki veritabanı türlerini destekler:
  • Excel 3.0
  • Excel 4.0
  • Excel 5.0
  • Excel 8.0
Not: Microsoft Excel 5.0 ve 7.0 (95) çalışma kitaplarını Excel 5.0 kaynak veritabanı türünü kullanın ve Excel 8.0 kaynak veritabanı türü için Microsoft Excel 8.0 (97) ve 9. 0'ı kullanma (2000) çalışma kitaplarını. ExcelADO.exe örnek Excel çalışma kitaplarını Excel 97 ve Excel 2000 biçiminde kullanır.

Aşağıdaki örnekler bir ADO bağlantı (veya 2000) bir Excel 97 çalışma kitabı gösterilmektedir:
Dim oConn As New ADODB.Connection
With oConn
    .Provider = "Microsoft.Jet.OLEDB.4.0"
    .Properties("Extended Properties").Value = "Excel 8.0"
    .Open "C:\Book1.xls"
    '....
    .Close
End With
				
- veya -
Dim oConn As New ADODB.Connection
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
           "Data Source=C:\Book1.xls;" & _
           "Extended Properties=""Excel 8.0;"""
oConn.Close
				
Tablo adlandırma kuralları

Bir Excel çalışma kitabında bir tablo (ya da aralığı) başvuru birkaç yolu vardır:
  • Dolar işareti) ve ardından <a1>Sayfa</a1> adını kullanmak (örneğin, [Sayfa1 $] veya [benim çalışma sayfası $]). Bu şekilde başvurulan BIR çalışma kitabını Tablo çalışma sayfasının kullanılan tüm aralığı oluşur.
    oRS.Open "Select * from [Sheet1$]", oConn, adOpenStatic
    					
  • Bir aralığı tanımlı bir ad (örneğin, [Table1]) kullanın.
    oRS.Open "Select * from Table1", oConn, adOpenStatic
    					
  • Belirli bir adresle bir aralık kullanın (örneğin, [Sayfa1 $ A1: B10]).
    oRS.Open "Select * from [Sheet1$A1:B10]", oConn, adOpenStatic
    					
Tablo başlıkları

Excel çalışma kitaplarına aralıktaki ilk satırın üstbilgi satırı (veya alan adlarını) varsayılan olarak kabul edilir. Belirtebileceğiniz ilk aralığı üstbilgi yok ise, HDR NO = bağlantı dizenizde genişletilmiş özelliklerinde. Ilk satırı başlıkları içerir, OLE DB sağlayıcısı otomatik olarak alanları için adları (F1, ilk alan temsil durumlarda, F2 ikinci alan temsil vb.).

Veri türleri

Geleneksel bir veritabanından farklı olarak, Excel tablolardaki sütunların veri türlerini belirtmek için doğrudan bir yol yoktur. Bunun yerine, OLE DB sağlayıcısı tahmin"alanı için veri türü için <a0></a0>", bir sütunun satırlarında bulunan sınırlı sayıda tarar. Varsayılan sekiz (8) satırlara; taranacak satır sayısı, bağlantı dizenizde genişletilmiş özelliklerinde bir (1) ile on altı (16) için MAXSCANROWS ayarı arasında bir değer belirterek, taranacak satır sayısını değiştirebilirsiniz.

Örnek ile bulunan dosyalar

ExcelADO.exe dosya standart exe DOSYASı Visual Basic projesi, Active Server Pages (ASP), Excel 97 ve Excel 2000 çalışma şablonları ve bir Microsoft Access 2000 veritabanını davranan kitapları içerir. Bulunan dosyalar aşağıdaki gibidir:

Visual Basic Standart EXE Project dosyaları
  • ExcelADO.vbp
  • Form1.frm
  • Form1.frx
Active Server Sayfaları
  • EmpData.asp
  • Orders.asp
Microsoft Excel çalışma kitapları
  • OrdersTemplate.xls
  • EmpDataTemplate.xls
  • ProductsTemplate.xls
  • SourceData.xls
Microsoft Access veritabanı
  • Data.mdb

Örnek nasıl kullanılır?

Bir klasöre .exe dosyasının içeriğini ayıklayın.

Visual Basic projesinin kullanmak için:
  1. Visual Basic'te ExcelADO.vbp dosyayı açın.
  2. Proje menüsünde Başvurular ' ı seçin ve sonra Ve güvenlik için Microsoft ADO Ext. ve Microsoft ActiveX Data Objects kitaplığı için başvurular ayarlayın. ADO 2.5 hem de ADO 2.6, bu örnek kod çalışır, böylece bilgisayarınıza uygun sürümü seçin.
  3. Programı çalıştırmak için F5 tuşuna basın. Gösteri için BIR form görüntülenir.
  4. Örnek 1'i tıklatın. Bu örnek, OrdersTemplate.xls bir kopyasını oluşturur. ADO çalışma kitabında bağlanır ve bir çalışma kitabındaki tanımlanmış aralığı bir tabloda bir Recordset açar. Aralık Orders_Table adıdır. ADO AddNew kullandığı / eklemek için Update yöntemleri kaydeder (veya satırları) çalışma kitabındaki tanımlanmış aralığı. Satır ekleme tamamlandı, ADO bağlantı kapatılır ve çalışma kitabını Microsoft Excel içinde görüntülenir. Bunu yapmak için şu adımları izleyin:
    1. Ekle menüsünden Excel'deki adları seçin ve Tanımla ' ı seçin.
    2. Tanımlanan adları listesinde Orders_Table seçin. Yeni eklenen kayıtları içermek için tanımlı ad ulaşmışsa unutmayın. Tanımlı bir ad, Excel'in KAYDıR işleviyle birlikte çalışma sayfasına eklenen veriler bir toplam hesaplamak için kullanılır.
    3. Microsoft Excel'den çıkın ve Visual Basic uygulamaya dönün.
  5. Örnek 2'yi tıklatın. Bu örnek, EmpDataTemplate.xls bir kopyasını oluşturur. ADO çalışma kitabında bağlanır ve veri (INSERT INTO SQL), çalışma kitabına eklemek için ADO Bağlantısı <a1>Execute</a1> yöntemi kullanır. Veriler, çalışma kitabındaki tanımlanmış aralıkları (ya da tablolar) eklenir. Verileri Transfer edildiğinde, bağlantı kapatılır ve sonuçları çalışma kitabını Excel içinde görüntülenir. Çalışma kitabını inceledikten sonra Microsoft Excel'i kapatın ve Visual Basic uygulamaya dönün.

  6. Örnek 3'ı tıklatın. Bu örnek, ProductsTemplate.xls bir kopyasını oluşturur. Microsoft ADO uzantıları 2.1 DDL ve güvenlik (ADOX) yeni bir tablo eklemek için nesne kitaplığına (veya yeni bir çalışma sayfası) çalışma kitabında kullanır. ADO Recordset, sonra yeni tablo için elde edilir ve veri AddNew ' ı kullanılarak eklenen / Update yöntemleri. Satır ekleme tamamlandı, ADO bağlantı kapatılır ve çalışma kitabını Excel içinde görüntülenir. Çalışma kitabını çalışma kitabının Visual Basic for Applications (VBA) Open olayı makro kodunu içerir. Çalışma kitabı açıldığında makro çalışır; makro kodu çalışma biçimler "Ürünler" Yeni çalışma kitabındaki varsa, makro kodu sonra silinir. Bu teknik, Web geliştirici, Web sunucusundan ve istemci biçimlendirme kodu taşımak için bir yol sunar. Web uygulama istemciye veri içerir ve bir "koşullu" biçimlendirme yapmak, makro kodu izin biçimlendirilmiş bir çalışma kitabı akışı, bağımsız istemcide çalıştırmak için bir şablonu mümkün olmayabilir.

    Not: ThisWorkbook modülü makro kodunu incelemek için <a0></a0>, ProductsTemplate.xls için VBAProject görüntüleyin.

  7. Örnek 4'te Ek Yardım düğmesini tıklatın. Bu örnek, örnek 1 aynı sonuçları verir, ancak verileri aktarmak için kullanılan yöntem biraz farklıdır. Örnek 1'de, kayıtları'nı (veya satırları) bir defada çalışma sayfasına bir eklenir. Kayıtları toplu Access veritabanına Excel tablosu ekleme ve bir ekleme sorgusu (veya INSERT INTO... örnek 4 eklerExcel tablosu için <a0>erişim</a0> tablosundaki bir tablodan kayıtları için SELECT FROM). Aktarım tamamlandığında, Access veritabanından Excel tablo ilişkisi kesildi ve sonuçları çalışma kitabını Excel içinde görüntülenir. Excel'den çıkın ve Visual Basic uygulamaya dönün.

  8. Nasıl bir Excel çalışma kitabından veri okuyabilir, son örnek gösterilmiştir. Aşağı açılan listeden bir Tablo seçin ve sonra örnek 5 ' i tıklatın. Anlık pencereyi seçtiğiniz tablosunun içeriğini görüntüler. Anlık pencereyi, bir tüm çalışma sayfasını ("Sayfa1 $" veya "Sayfa2 $") tablo seçerseniz, çalışma için kullanılan aralığın içeriğini görüntüler. Kullanılan aralık 1, çalışma sayfasının sütun 1 numaralı satırda mutlaka başlamıyor unutmayın. Kullanılan aralık verileri içeren çalışma sayfasının üst en sol hücreye başlar.

    Anlık pencereyi, tanımlanmış bir aralığa ya da belirli bir adres seçerseniz, çalışma sayfasında, aralığın içeriğini görüntüler.
Active Server Pages (ASP) kullanmak için:
  1. Web sunucunuzun giriş dizininde ExcelADO adlı yeni bir klasör oluşturun. Varsayılan giriş dizini yolu C:\InetPut\WWWRoot olduğunu unutmayın.
  2. Aşağıdaki dosyaları, önceki adımda oluşturduğunuz klasöre kopyalayın:
    • EmpData.asp
    • Orders.asp
    • Data.mdb
    • EmpDataTemplate.xls
    • OrdersTemplate.xls

  3. Bu örnek oluşturma kopyalarını çalışma kitabı şablonları FileSystemObject, <a1>Kopyala</a1> yöntemiyle, ASP komut dosyaları. Copy yönteminin başarılı olması için komut dosyası erişen istemci ASP uygulamasını içeren klasöre yazma erişimi olması gerekir.
  4. Orders.asp (http://YourServer/ExcelADO/Orders.ASP)</a0> için gezinme ve tarayıcı benzer şekilde <a0>Visual Basic</a0> uygulamasının Örnek 1 ' de bir Excel çalışma kitabı görüntülediğini unutmayın.
  5. EmpData.asp (http://YourServer/ExcelADO/EmpData.ASP)</a0> için gezinme ve tarayıcı benzer şekilde <a0>Visual Basic</a0> uygulamasının Örnek 2 ' de bir Excel çalışma kitabı görüntülediğini unutmayın.
(c) Microsoft Corporation 2000'de, tüm hakları saklıdır. Katkıyı Gamze B Turner, Microsoft Corporation.

Referanslar

Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
195951Nasıl YAPıLıR: Sorgula ve ASP Kimden ADO kullanarak Excel verilerini güncelleştirme
194124SORUN: DAO OpenRecordset kullanarak BOş olarak döndürülüyor Excel değerleri
193998Nasıl YAPıLıR: Okuma ve görüntü ikili veriyi ASP'de
247412BILGI: verilerini Visual Basic'den Excel'e aktarma yöntemleri
257819Nasıl YAPıLıR: Excel verilerden Visual Basic'de veya VBA'DA ile ADO kullanma.

Özellikler

Makale numarası: 278973 - Last Review: 8 Mart 2005 Salı - Gözden geçirme: 6.1
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Excel 2000 Standard Edition
  • Microsoft ActiveX Data Objects 2.5
  • Microsoft ActiveX Data Objects 2.6
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Basic Enterprise Edition for Windows 6.0
  • Microsoft Active Server Pages 4.0
Anahtar Kelimeler: 
kbmt kbdownload kbautomation kbfile kbprogramming KB278973 KbMttr
Machine-translated Article
Ö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:278973

Geri Bildirim Ver

 

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