user form esc ile kapatma olayı

netvolxxx

Altın Üye
Katılım
29 Ağustos 2023
Mesajlar
35
Excel Vers. ve Dili
2023
Altın Üyelik Bitiş Tarihi
07-03-2025
merhaba user form da esc tuşuna bastığımda kapansın istiyorum mevcut kapatma kodları ile ilgili form yapımda denemedim ama bi türlü olmadı
forumdaki yazan örneklere baktım kod çalışıyor yeni bir form açtığımda ok sorun yok

benim mevcut kodlarım aşağıda yazılı burda nereye uygulucam form esc tuşuna basınca kapansın.

Private Sub CommandButton1_Click()
On Local Error Resume Next
For i = 9 To 37
Sayfa3.Cells(i, 1).Value = ""
Sayfa3.Cells(i, 2).Value = ""
Sayfa3.Cells(i, 3).Value = ""
Sayfa3.Cells(i, 4).Value = ""
Sayfa3.Cells(i, 5).Value = ""
Next i
Call Teklif_Topla
End Sub

Private Sub Image1_BeforeDragOver(ByVal Cancel As MSForms.ReturnBoolean, ByVal Data As MSForms.DataObject, ByVal X As Single, ByVal Y As Single, ByVal DragState As MSForms.fmDragState, ByVal Effect As MSForms.ReturnEffect, ByVal Shift As Integer)

End Sub

Private Sub Label1_Click()

End Sub

Private Sub ListBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
On Local Error Resume Next
If KeyCode = vbKeyReturn Then
For Z = 0 To ListBox1.ListCount
DoEvents

If ListBox1.Selected(Z) Then
For i = 12 To 41
If Sayfa3.Cells(i, 1).Value = ListBox1.List(Z, 0) Then
MsgBox "Aşağıdaki ürün Daha Önce Eklenmiş !!!" & Chr(13) & ListBox1.List(Z, 0) & Chr(13) & ListBox1.List(Z, 1), vbInformation
ListBox1.Selected(Z) = False
Exit Sub
End If
If Sayfa3.Cells(i, 2).Value = "" Then
Sayfa3.Cells(i, 2).Value = ListBox1.List(Z, 0)
Sayfa3.Cells(i, 6).Value = ListBox1.List(Z, 6)
Sayfa3.Cells(i, 10).Value = ListBox1.List(Z, 3)
Sayfa3.Cells(i, 4).Value = ListBox1.List(Z, 150)
Sayfa3.Cells(i, 9).Value = "1"
ListBox1.Selected(Z) = False
Exit For
End If
Next i
End If
Next Z
End If
Call Teklif_Topla
End Sub
Sub Teklif_Topla()
On Local Error Resume Next
For i = 9 To 37
Toplam = Toplam + Sayfa3.Cells(i, 6).Value
Next i
KDV = (Toplam * 0) / 100
Label4.Caption = "|Toplam : " & Toplam & "| KDV %0: " & KDV & "| Teklif Toplamı : " & (Toplam + KDV) & "|"
End Sub



Private Sub TextBox1_Change()
On Local Error Resume Next
satir = 0
ListBox1.ColumnHeads = False
ListBox1.ColumnWidths = "50 cm;10 cm; 1 cm;1 cm"
ListBox1.AddItem
ListBox1.Clear

Dim uzunluk As Integer
uzunluk = Len(TextBox1.Text)
If uzunluk > 0 Then
For i = 1 To 5000
If Mid$(Sayfa5.Cells(i, 1).Value, 1, uzunluk) = TextBox1.Text Then
satir = satir + 1
ListBox1.AddItem

ListBox1.List(satir - 1, 0) = Sayfa5.Cells(i, 1).Value
ListBox1.List(satir - 1, 1) = Sayfa5.Cells(i, 2).Value
ListBox1.List(satir - 1, 2) = Sayfa5.Cells(i, 3).Value
ListBox1.List(satir - 1, 3) = Sayfa5.Cells(i, 4).Value

End If
Next i
End If
Label3.Caption = "Listelenen Kayıt Sayısı : " & ListBox1.ListCount
End Sub

Private Sub TextBox2_Change()
On Local Error Resume Next
satir = 0
ListBox1.ColumnHeads = False
ListBox1.ColumnWidths = "3 cm;10 cm; 1 cm;1 cm"
ListBox1.AddItem
ListBox1.Clear
Dim uzunluk As Integer
uzunluk = Len(TextBox2.Text)
If uzunluk > 0 Then
For i = 1 To 5000
If Mid$(Sayfa5.Cells(i, 1).Value, 1, uzunluk) = TextBox2.Text Then
satir = satir + 1
ListBox1.AddItem

ListBox1.List(satir - 1, 0) = Sayfa5.Cells(i, 1).Value
ListBox1.List(satir - 1, 1) = Sayfa5.Cells(i, 2).Value
ListBox1.List(satir - 1, 2) = Sayfa5.Cells(i, 3).Value
ListBox1.List(satir - 1, 3) = Sayfa5.Cells(i, 4).Value

End If
Next i
End If
Label3.Caption = "Listelenen Kayıt Sayısı : " & ListBox1.ListCount
End Sub

Private Sub UserForm_Activate()
Call Teklif_Topla
End Sub
 

Cengiz Demir

Altın Üye
Katılım
29 Haziran 2018
Mesajlar
594
Excel Vers. ve Dili
Office 365 TR (32 Bit)
Altın Üyelik Bitiş Tarihi
05-04-2025
Daha basit nasıl olur bilmiyorum ama
Esc tuşu ile çıkış kodlarını form üzerindeki her nesnenin KeyDown olayının içine ekleyin.

Örn:

Kod:
Private Sub fis_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 27 Then Unload Me
End Sub
 

netvolxxx

Altın Üye
Katılım
29 Ağustos 2023
Mesajlar
35
Excel Vers. ve Dili
2023
Altın Üyelik Bitiş Tarihi
07-03-2025
ben denedim ama ne yaptıysam sonuç alamadım bi türlü...
 

netvolxxx

Altın Üye
Katılım
29 Ağustos 2023
Mesajlar
35
Excel Vers. ve Dili
2023
Altın Üyelik Bitiş Tarihi
07-03-2025
Üstad dediğin şekilde mantığı anladım yaptım işlem başarılı teşekürrler....
 
Üst