Aracılığıyla paylaş


İzlenecek Yol: Excel için İlk Uygulama Düzeyi Eklentinizi Yaratma

Bu giriş anlatımında Microsoft Office Excel için uygulama düzeyi eklentilerin nasıl oluşturulduğu gösterilir. Bu tarz çözümde oluşturduğunuz özellikler hangi çalışma kitabının açık olduğuna bağlı olmaksızın uygulamanın kendisinde kullanılabilir.

Uygulama alanı: Bu konudaki bilgiler Excel 2007 ve Excel 2010 uygulamalarının uygulama düzeyi projelerine yöneliktir. Daha fazla bilgi için bkz. Office Uygulamalarında Kullanılabilir Özellikler ve Proje Türü.

Bu anlatım aşağıdaki görevleri gösterir:

  • Excel için bir Excel eklenti projesi oluşturma.

  • Kaydedildiğinde çalışma kitabına metin eklemek için Excel nesne modelini kullanan kod yazma.

  • Sınamak için projeyi oluşturma ve çalıştırma.

  • Geliştirici bilgisayarınızdaki tamamlanmış projeyi eklentinin artık otomatik olarak çalışmaması için temizleme.

Not

Bilgisayarınız, aşağıdaki yönergelerde yer alan Visual Studio kullanıcı arabirimi öğelerinden bazıları için farklı adlar veya konumlar gösterebilir. Bu öğeleri bilgisayarınızdaki Visual Studio sürümü ve kullandığınız ayarlar belirler. Daha fazla bilgi için bkz: Visual Studio Ayarlar.

Önkoşullar

Bu anlatımı tamamlamak için aşağıdaki bileşenlere ihtiyacınız vardır:

-

Microsoft Office geliştirici araçlarını içeren bir Visual Studio 2010 sürümü. Daha fazla bilgi için bkz: [Office Çözümeri Geliştirmek İçin Bilgisayarı Yapılandırma](bb398242\(v=vs.100\).md).
  • Microsoft Office Excel 2007 ya da Excel 2010.

Projeyi Oluşturma

Visual Studio'da yeni Excel eklenti projesi yaratmak

  1. Visual Studio uygulamasını başlatın.

  2. File (Dosya) menüsünde, New'un (Yeni) üzerine gelin ve Project'i (Proje) tıklatın.

  3. Şablon bölmesinde Visual C# veya Visual Basic'i genişletin ve sonra Office'i genişletin.

  4. Genişletilmiş Office düğümünde Excel 2007 yüklü ise 2007'ı veya Excel 2010 yüklüyse 2010'i seçin.

  5. Proje şablonları listesinde Excel 2007 Eklentisi'ni ya da Excel 2010 Eklentisi'ni seçin.

  6. Ad metin kutusuna FirstExcelAddIn yazın.

  7. Tamam düğmesini tıklatın.

    Visual Studio, FirstExcelAddIn projesini oluşturur ve ThisAddIn kod dosyasını düzenleyicide açar.

Kaydedilmiş Çalışma Kitabına Metin Eklemek İçin Kod Yazma

Sonra, kodu ThisAddIn kod dosyasına ekleyin. Yeni kod, etkin çalışma sayfasının ilk satırına ortak metin eklemek için Excel nesne modelini kullanır. Etkin çalışma sayfası, kullanıcı çalışma kitabını kaydettiğinde açık olan bir çalışma sayfasıdır. Varsayılan olarak ThisAddIn kod dosyası aşağıdaki oluşturulmuş kodu içerir:

  • ThisAddIn sınıfının kısmi tanımlaması. Bu sınıf kodunuz için bir giriş noktası sunar ve Excel'in nesne modeline erişim sağlar. Daha fazla bilgi için bkz. Uygulama Düzeyi Eklentileri Programlama. ThisAddIn sınıfının geri kalanı değiştirmemeniz gereken gizli bir kod dosyasında tanımlanmıştır.

  • ThisAddIn_Startup ve ThisAddIn_Shutdown olay işleyicileri. Bu olay işleyicileri, Excel sizin eklentinizi yüklediğinde ve kaldırdığında çağırılır. Eklentiniz yüklendiğinde eklentinizi başlatmak ve kaldırıldığında eklentinizin kullandığı kaynakları temizlemek için bu olay işleyicilerini kullanın. Daha fazla bilgi için bkz. Office Projelerindeki Olaylar.

Kaydedilmiş çalışma kitabına metnin bir satırını eklemek

  1. ThisAddIn kod dosyasında aşağıdaki kodu ThisAddIn sınıfına ekleyin. Yeni kod, çalışma kitabı kaydedildiğinde oluşan WorkbookBeforeSave olayı için bir olay işleyicisi tanımlar.

    Kullanıcı çalışma kitabını kaydettiğinde, olay işleyicisi yeni metni etkin çalışma sayfasının başlangıcına ekler.

    Private Sub Application_WorkbookBeforeSave(ByVal Wb As Microsoft.Office.Interop.Excel.Workbook, ByVal SaveAsUI As Boolean, ByRef Cancel As Boolean) Handles Application.WorkbookBeforeSave
        Dim activeWorksheet As Excel.Worksheet = CType(Application.ActiveSheet, Excel.Worksheet)
        Dim firstRow As Excel.Range = activeWorksheet.Range("A1")
        firstRow.EntireRow.Insert(Excel.XlInsertShiftDirection.xlShiftDown)
        Dim newFirstRow As Excel.Range = activeWorksheet.Range("A1")
        newFirstRow.Value2 = "This text was added by using code"
    End Sub
    
    void Application_WorkbookBeforeSave(Microsoft.Office.Interop.Excel.Workbook Wb, bool SaveAsUI, ref bool Cancel)
    {
        Excel.Worksheet activeWorksheet = ((Excel.Worksheet)Application.ActiveSheet);
        Excel.Range firstRow = activeWorksheet.get_Range("A1", missing);
        firstRow.EntireRow.Insert(Excel.XlInsertShiftDirection.xlShiftDown, System.Type.Missing);
        Excel.Range newFirstRow = activeWorksheet.get_Range("A1", missing);
        newFirstRow.Value2 = "This text was added by using code";
    }
    
  2. C# kullanıyorsanız, ThisAddIn_Startup olay işleyicisine aşağıdaki gerekli kodu ekleyin. Bu kod Application_WorkbookBeforeSave olay işleyicisini WorkbookBeforeSave olayı ile bağlamak için kullanılır.

    this.Application.WorkbookBeforeSave += new Microsoft.Office.Interop.Excel.AppEvents_WorkbookBeforeSaveEventHandler(Application_WorkbookBeforeSave);
    

Çalışma kitabını kaydedildiğinde değiştirmek için yukarıdaki kod örnekleri aşağıdaki nesneleri kullanır:

Projeyi Sınama

Projeyi sınama

  1. Projeyi derlemek ve çalıştırmak için F5'e basın.

    Projeyi derlediğinizde kod, projenin yapı çıktı klasörüne dahil edilen bir bütünleştirilmiş koda dönüşür. Visual Studio ayrıca Excel'in eklentiyi fark edip yükleyebilmesi için kayıt girdilerinden oluşan bir küme yaratır ve eklentinin çalışabilmesi için geliştirici bilgisayarının güvenlik ayarlarını yapılandırır. Daha fazla bilgi için bkz. Office Çözümleri Yapı İşlemine Genel Bakış.

  2. Excel'de çalışma kitabını kaydedin.

  3. Aşağıdaki metnin çalışma kitabına ekli olduğunu doğrulayın.

    Bu metin kod kullanılarak eklenmiştir.

  4. Excel'i kapatın.

Projeyi Temizleme

Projeyi geliştirmeyi bitirdiğinizde eklentinin bütünleştirilmiş kodunu, kayıt girdilerini ve güvenlik ayarlarını geliştirme bilgisayarınızdan kaldırın. Aksi halde, Excel'i geliştirme bilgisayarında her açtığınızda eklenti çalışmaya devam edecektir.

Geliştirici bilgisayarınızdaki tamamlanmış projeyi temizlemek için

  • Visual Studio Build (Yapı) menüsünde Clean Solution'a (Çözümü Temizle) tıklayın.

Sonraki Adımlar

Excel için temel bir uygulama düzeyi eklentisi oluşturduğunuza göre, eklentileri nasıl geliştireceğiniz hakkında daha fazlasını bu konulardan öğrenebilirsiniz:

Ayrıca bkz.

Kavramlar

Office Çözümleri Geliştirmesine Genel Bakış

Diğer Kaynaklar

Excel Çözümleri

Uygulama Düzeyi Eklentileri Programlama

Excel Nesne Modeline Genel Bakış

Office UI Özelleştirmesi

Office Çözümlerini Oluşturma ve Hatalarını Ayıklama

Office Çözümlerini Dağıtma

Office Proje Şablonlarına Genel Bakış