Hata:, Bir Excel listesi satırı KomutDüğmesi Click olayından silinemiyor

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

Bu Sayfada

Belirtiler

Office Excel 2003 için yerleşik bir yönetilen kod uzantısı. Çözümünüz, çalışma sayfasında bulunan bir listesi nesnesi satırları kaldırmak için tıklatın olay MSForms KomutDüğmesi denetiminin kullanır. Liste satır kaldırmak için bu düğmeyi tıklattığınızda, satır kaldırılmaz ve bir çalışma zamanı hatası alabilirsiniz.

Durum

Microsoft Office Excel 2003'te bir hata olduğunu onaylamıştır.

Çözüm

Bu sorunu gidermek için <a0></a0>, liste satır sildiğinizde KomutDüğmesi odağı olmadığından emin olun. Aşağıdaki yöntemlerden birini kullanın:
  • KomutDüğmesiTakeFocusOnClick özelliğini false olarak ayarlayın.

    -VEYA-
  • Odak uzağa, KomutDüğmesi almak için çalışma sayfası seçilen re-select.

Pratik Çözüm

Bu soruna geçici bir çözüm için aşağıdaki yöntemlerden birini kullanın:
  • KomutDüğmesi denetim TakeFocusOnClick özelliği false olarak ayarlayın:
    protected void ThisWorkbook_Open()
    {
    	//Get a reference to the first worksheet.
    	ws = (Excel.Worksheet)(ThisWorkbook.Worksheets[1]);
    
    	//Set up the Click event handler for CommandButton1.
    	cb = (MSForms.CommandButton)(this.FindControl("CommandButton1"));
    	cb.Click+= new MSForms.CommandButtonEvents_ClickEventHandler(cbClick);
    
    	cb.TakeFocusOnClick = false;
    }
    


    -VEYA-
  • Geçerli çalışma KomutDüğmesi odağı kaldırmak için seçimseçme yöntemi çağrısı:
    private void cbClick()
    { 
    	ThisApplication.Selection.GetType().InvokeMember("Select",
    		System.Reflection.BindingFlags.Public | 
    		System.Reflection.BindingFlags.InvokeMethod | 
    		System.Reflection.BindingFlags.Instance,
    		null,
    		ThisApplication.Selection,
    		null);
    	
    	ws.ListObjects[1].ListRows[1].Delete();
    }
    

Daha fazla bilgi

Davranışı Yeniden Oluşturma Adımları

  1. Microsoft Visual Studio .NET 2003 başlatın.
  2. Dosya menüsünde Yeni ' nin üzerine gelin ve sonra Project ' i tıklatın.
  3. Proje türleri listesi, Microsoft Office System projeleri genişletin ve Visual C# Projects ' ı tıklatın. Excel çalışma kitabı şablonu listeden seçin ve Tamam ' ı tıklatın.
  4. Microsoft Office Project Sihirbazıson ' u tıklatın.
  5. Projeyi çalıştırın ve çalışma kitabını Excel'de açmak için F5 tuşuna basın.
  6. Çalışma kitabını aşağıdaki gibi değiştirin:
    1. A1 hücresini seçin.
    2. Veri menüsünden listesi üzerine gelin ve Liste Oluştur</a1>'ı tıklatın. Liste Oluştur iletişim kutusu görüntülenir. Tamam ' ı tıklatın.
    3. Hücre A2, A3 ve A4 herhangi bir metin eklemek (a2: a4).
    4. Görünüm menüsünden araç çubukları ' nın gelin ve Denetim Araç kutusu</a1>'ı tıklatın.
    5. Çalışma sayfasında bir KomutDüğmesi denetimi çizin. CommandButton1 varsayılan adıdır.
    6. Çalışma kitabını kaydedin ve ardından Excel'den çıkın.
  7. Thisworkbook.cs kodu modüle aşağıdaki kodu ekleyin:
    private MSForms.CommandButton cb;
    private Excel.Worksheet ws;
    
    protected void ThisWorkbook_Open()
    {
    	//Get a reference to the first worksheet.
    	ws = (Excel.Worksheet)(ThisWorkbook.Worksheets[1]);
    
    	//Set up the Click event handler for CommandButton1.
    	cb = (MSForms.CommandButton)(this.FindControl("CommandButton1"));
    	cb.Click+= new MSForms.CommandButtonEvents_ClickEventHandler(cbClick);
    }
    
    private void cbClick()
    {
    	try
    	{
    		//Delete the first row in the list object.
    		ws.ListObjects[1].ListRows[1].Delete();
    	}
    	catch (Exception ex)
    	{
    		System.Diagnostics.Debug.WriteLine(ex.Message);
    		MessageBox.Show(ex.Message);
    	}
    }
    
  8. Projeyi çalıştırın ve oluşturmak için F5 tuşuna basın.
  9. CommandButton1 Ek Yardım düğmesini tıklatın.

    Sonuç Listedeki satır silerken, bir özel durum yakalandı. Aşağıdaki hata iletisini alıyorsunuz
    HRESULT özel durum: 0x800A03EC

Özellikler

Makale numarası: 823988 - Last Review: 15 Ocak 2007 Pazartesi - Gözden geçirme: 2.3
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Office Excel 2003
  • Microsoft Visual Studio Tools for the Microsoft Office System version 2003
Anahtar Kelimeler: 
kbmt kbbug kbautomation kbnofix KB823988 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:823988

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