Soru nesnelerin içlerini silme

sirkülasyon

Altın Üye
Katılım
10 Temmuz 2012
Mesajlar
2,518
Excel Vers. ve Dili
2021 LTSC TR
Altın Üyelik Bitiş Tarihi
18-06-2026
Kod:
Dim Cevap As VbMsgBoxResult
Cevap = MsgBox("Yeni Kayıt için Formdaki Bilgileri Silmek İstediğinizden Emin misiniz.?", vbOKOnly + vbYesNo, "MESAJ")
If Cevap = vbYes Then
For Each i In Me.Controls
If TypeName(i) = "TextBox" Or TypeName(i) = "ComboBox" Then i.Value = ""
If TypeName(i) = "OptionButton" Or TypeName(i) = "CheckBox" Then i.Value = False
Next i
End If
ustam userformda nesnelerin içi dolu ise yukarıdaki kod ile temizliyorum. Eğer tüm nesneler boş ise "Tüm nesneler boş olduğu için işlem yapılamadı" uyarısını nasıl ekleyebilirim.
 

askm

Destek Ekibi
Destek Ekibi
Katılım
4 Haziran 2005
Mesajlar
2,745
Excel Vers. ve Dili
2010-2016
Aşağıdaki şekilde deneyin.
Kod:
Dim Cevap As VbMsgBoxResult
Dim t As Integer
Cevap = MsgBox("Yeni Kayıt için Formdaki Bilgileri Silmek İstediğinizden Emin misiniz.?", vbOKOnly + vbYesNo, "MESAJ")
If Cevap = vbYes Then
For Each i In Me.Controls
If TypeName(i) = "TextBox" Or TypeName(i) = "ComboBox" Then If i.Value = "" Then t = t + 1 Else i.Value = ""
If TypeName(i) = "OptionButton" Or TypeName(i) = "CheckBox" Then If i.Value = False Then t = t + 1 Else i.Value = False
Next i
End If
If t = 0 Then
    MsgBox "Tüm nesneler boş olduğu için işlem yapılamadı", vbInformation, "UYARI!"
End If
 

sirkülasyon

Altın Üye
Katılım
10 Temmuz 2012
Mesajlar
2,518
Excel Vers. ve Dili
2021 LTSC TR
Altın Üyelik Bitiş Tarihi
18-06-2026
Sayın askm
Kod:
If t = 0 Then
    MsgBox "Tüm nesneler boş olduğu için işlem yapılamadı", vbInformation, "UYARI!"
End If
bu kısım devreye hiç girmiyor.
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,647
Excel Vers. ve Dili
Pro Plus 2021
Kod:
    Dim Cevap As VbMsgBoxResult, temizlendi As Boolean, i As Object
    Cevap = MsgBox("Yeni Kayıt için Formdaki Bilgileri Silmek İstediğinizden Emin misiniz.?", vbOKOnly + vbYesNo, "MESAJ")
    If Cevap = vbYes Then
        For Each i In Me.Controls
            If (TypeName(i) = "TextBox" Or TypeName(i) = "ComboBox") And i.Value <> "" Then
                i.Value = ""
                temizlendi = True
            End If
            If (TypeName(i) = "OptionButton" Or TypeName(i) = "CheckBox") And i.Value = True Then
                i.Value = False
                temizlendi = True
            End If
            
        Next i
    End If
    If temizlendi = False Then
        MsgBox "Tüm nesneler boş olduğu için işlem yapılamadı", vbInformation, "UYARI!"
    End If
 

sirkülasyon

Altın Üye
Katılım
10 Temmuz 2012
Mesajlar
2,518
Excel Vers. ve Dili
2021 LTSC TR
Altın Üyelik Bitiş Tarihi
18-06-2026
Üstadım
Çok teşekkür ederim.
 
Üst