• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Varsa sil nasıl denir?

Tevfik_Kursun

Altın Üye
Katılım
30 Temmuz 2012
Mesajlar
3,903
Excel Vers. ve Dili
Office 2016 Pro - Türkçe 64 Bit
Merhaba Arkadaşlar,
Acaba Deneme_Kutusu adlı TextBox varsa sil nasıl denir?
Saygılarımla
 
Merhaba Arkadaşlar,
Kod:
Sub Kutu_Sil()
    If Range(Array("Deneme_Kutusu")) Then
        ActiveSheet.Shapes.Range(Array("Deneme_Kutusu")).Select
        Selection.Delete
    End If
End Sub
If Range(Array("Deneme_Kutusu")) Then
satırda 1004 kodlu hata geliyor. Bu hata nasıl giderilir?
Saygılarımla
 
Nesneyi eklerken "Set" ile atama yapıp, nesnenin ismini atarsanız, sonradan bulmak kolay olur....

C#:
Sub TextBox_Ekle()
    Set myBox = ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, Range("B5").Top, Range("B5").Left, 100, 100)
    myBox.Name = "Deneme_Kutusu"
End Sub
'
Sub TextBox_Sil()
    For i = 1 To ActiveSheet.Shapes.Count
        If ActiveSheet.Shapes(i).Name = "Deneme_Kutusu" Then ActiveSheet.Shapes(i).Delete
    Next
End Sub

.
 
Sayın Haluk Hocam,
Çok teşekkür ederim.
Saygılarımla
 
Merhaba.

Alternatif silme aşağıdaki gibi de yapılabilir.

Kod:
Sub TextBox_Sil()
    ActiveSheet.Shapes("Deneme_Kutusu").Delete
End Sub
 
.edit
 
Son düzenleme:
Pardon. Ben alttaki kodu yanlış görmüşüm.
 
Hata kontrolüde işe yarayabilir.

C++:
Option Explicit

Sub Varsa_Sil()
    Dim Nesne As Shape
    
    On Error Resume Next
    Set Nesne = Nothing
    Set Nesne = Sheets("Sheet1").Shapes("Deneme_Kutusu")
    On Error GoTo 0
    
    If Not Nesne Is Nothing Then
        Nesne.Delete
    Else
        MsgBox "Deneme_Kutusu isimli nesne bulunamadı!", vbCritical
    End If
End Sub
 
Hata kontrollü alternatif

Kod:
Sub TextBox_Sil()
    On Error GoTo nesneyok
    ActiveSheet.Shapes("Deneme_Kutusu").Delete
    Exit Sub
nesneyok:
    MsgBox "'Deneme_Kutusu' adlı nesne bulunamıyor."
End Sub
 
Geri
Üst