- Katılım
- 17 Mart 2022
- Mesajlar
- 281
- Excel Vers. ve Dili
- 2016/Türkçe
- Altın Üyelik Bitiş Tarihi
- 22-03-2023
Merhaba,
Öncelikle Berat kandilinizi tebrik eder, hayırlı kandiller dilerim.
Bir proje ekranım var hemen hemen tamamladım hatta bitti diyebiliriz ufak bir detayım kaldı onu da bir türlü aşamadım. Bu nedenle bilgisi dahilinde olan üstatların değerli desteklerine ihtiyacım var.
Aşağıdaki kodlarda göreceğiniz üzere bir arama formu oluşturdum. Fakat arama datamda olmayan ID lerde Run-time error '1004': WorksheetFunction sınıfının Match özelliği alınamıyor hatası alıyorum. Bu hatayı almadan bir msgbox mesajı nasıl yazabilirim? Yani demem oki bu ürün ıd datada yok devam etmek istiyor musun diye soracak devam ettiğimde forma geri dönsün. "Run-time error '1004': WorksheetFunction sınıfının Match özelliği alınamıyor" bu hatayı aldığımda end dediğimde formdan ve dolayısı ile excelden çıkıyor. Debuk dediğim kod sayfasına yönlendiriyor vs..
Değerli desteklerinizi istirham eder, sağlıklı günler dilerim.
Orhan ÇOLAK
orh.colak37@gmail.com
Kodlar;
Private Sub CommandButton2_Click()
Application.Visible = True
Unload Me
End Sub
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 Then KeyCode = 0
End Sub
Private Sub TextBox1_Change()
If Len(TextBox1.Value) < 13 Then Exit Sub
Dim kayitsayisi, kacincikayit, satirsayisi As Long
'***Buradaki kodları revize ettim
If TextBox1.Value = Label12.Caption Then
kayitsayisi = TextBox9.Value
If TextBox10.Value = TextBox9.Value Then
kacincikayit = 1
satirsayisi = WorksheetFunction.Match(TextBox1.Value * 1, Sheets("Data").Range("A1:A1048576"), False)
Else
TextBox10.Value = TextBox10.Value + 1
kacincikayit = TextBox10.Value
satirsayisi = Label13.Caption * 1
Nerede = WorksheetFunction.Match(TextBox1.Value * 1, Sheets("Data").Range("A" & satirsayisi + 1 & ":A1048576"), False)
satirsayisi = satirsayisi + Nerede
End If
TextBox9.Value = kayitsayisi
TextBox10.Value = kacincikayit
Label13.Caption = satirsayisi
TextBox2.Value = Sheets("Data").Range("B" & satirsayisi).Value
TextBox3.Value = Sheets("Data").Range("C" & satirsayisi).Value
TextBox4.Value = Sheets("Data").Range("A" & satirsayisi).Value
TextBox5.Value = Sheets("Data").Range("D" & satirsayisi).Value
TextBox6.Value = Sheets("Data").Range("E" & satirsayisi).Value
TextBox7.Value = Sheets("Data").Range("F" & satirsayisi).Value
TextBox8.Value = Sheets("Data").Range("G" & satirsayisi).Value
Else
Label12.Caption = TextBox1.Value
kacincikayit = 1
kayitsayisi = WorksheetFunction.CountIf(Sheets("Data").Range("A:A"), TextBox1.Value)
satirsayisi = WorksheetFunction.Match(TextBox1.Value * 1, Sheets("Data").Range("A1:A1048576"), False)
TextBox9.Value = kayitsayisi
TextBox10.Value = kacincikayit
Label13.Caption = satirsayisi
TextBox2.Value = Sheets("Data").Range("B" & satirsayisi).Value
TextBox3.Value = Sheets("Data").Range("C" & satirsayisi).Value
TextBox4.Value = Sheets("Data").Range("A" & satirsayisi).Value
TextBox5.Value = Sheets("Data").Range("D" & satirsayisi).Value
TextBox6.Value = Sheets("Data").Range("E" & satirsayisi).Value
TextBox7.Value = Sheets("Data").Range("F" & satirsayisi).Value
TextBox8.Value = Sheets("Data").Range("G" & satirsayisi).Value
End If
TextBox1.Value = ""
TextBox1.SetFocus
End Sub
Private Sub CommandButton1_Click()
Application.Visible = True
End Sub
Öncelikle Berat kandilinizi tebrik eder, hayırlı kandiller dilerim.
Bir proje ekranım var hemen hemen tamamladım hatta bitti diyebiliriz ufak bir detayım kaldı onu da bir türlü aşamadım. Bu nedenle bilgisi dahilinde olan üstatların değerli desteklerine ihtiyacım var.
Aşağıdaki kodlarda göreceğiniz üzere bir arama formu oluşturdum. Fakat arama datamda olmayan ID lerde Run-time error '1004': WorksheetFunction sınıfının Match özelliği alınamıyor hatası alıyorum. Bu hatayı almadan bir msgbox mesajı nasıl yazabilirim? Yani demem oki bu ürün ıd datada yok devam etmek istiyor musun diye soracak devam ettiğimde forma geri dönsün. "Run-time error '1004': WorksheetFunction sınıfının Match özelliği alınamıyor" bu hatayı aldığımda end dediğimde formdan ve dolayısı ile excelden çıkıyor. Debuk dediğim kod sayfasına yönlendiriyor vs..
Değerli desteklerinizi istirham eder, sağlıklı günler dilerim.
Orhan ÇOLAK
orh.colak37@gmail.com
Kodlar;
Private Sub CommandButton2_Click()
Application.Visible = True
Unload Me
End Sub
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 Then KeyCode = 0
End Sub
Private Sub TextBox1_Change()
If Len(TextBox1.Value) < 13 Then Exit Sub
Dim kayitsayisi, kacincikayit, satirsayisi As Long
'***Buradaki kodları revize ettim
If TextBox1.Value = Label12.Caption Then
kayitsayisi = TextBox9.Value
If TextBox10.Value = TextBox9.Value Then
kacincikayit = 1
satirsayisi = WorksheetFunction.Match(TextBox1.Value * 1, Sheets("Data").Range("A1:A1048576"), False)
Else
TextBox10.Value = TextBox10.Value + 1
kacincikayit = TextBox10.Value
satirsayisi = Label13.Caption * 1
Nerede = WorksheetFunction.Match(TextBox1.Value * 1, Sheets("Data").Range("A" & satirsayisi + 1 & ":A1048576"), False)
satirsayisi = satirsayisi + Nerede
End If
TextBox9.Value = kayitsayisi
TextBox10.Value = kacincikayit
Label13.Caption = satirsayisi
TextBox2.Value = Sheets("Data").Range("B" & satirsayisi).Value
TextBox3.Value = Sheets("Data").Range("C" & satirsayisi).Value
TextBox4.Value = Sheets("Data").Range("A" & satirsayisi).Value
TextBox5.Value = Sheets("Data").Range("D" & satirsayisi).Value
TextBox6.Value = Sheets("Data").Range("E" & satirsayisi).Value
TextBox7.Value = Sheets("Data").Range("F" & satirsayisi).Value
TextBox8.Value = Sheets("Data").Range("G" & satirsayisi).Value
Else
Label12.Caption = TextBox1.Value
kacincikayit = 1
kayitsayisi = WorksheetFunction.CountIf(Sheets("Data").Range("A:A"), TextBox1.Value)
satirsayisi = WorksheetFunction.Match(TextBox1.Value * 1, Sheets("Data").Range("A1:A1048576"), False)
TextBox9.Value = kayitsayisi
TextBox10.Value = kacincikayit
Label13.Caption = satirsayisi
TextBox2.Value = Sheets("Data").Range("B" & satirsayisi).Value
TextBox3.Value = Sheets("Data").Range("C" & satirsayisi).Value
TextBox4.Value = Sheets("Data").Range("A" & satirsayisi).Value
TextBox5.Value = Sheets("Data").Range("D" & satirsayisi).Value
TextBox6.Value = Sheets("Data").Range("E" & satirsayisi).Value
TextBox7.Value = Sheets("Data").Range("F" & satirsayisi).Value
TextBox8.Value = Sheets("Data").Range("G" & satirsayisi).Value
End If
TextBox1.Value = ""
TextBox1.SetFocus
End Sub
Private Sub CommandButton1_Click()
Application.Visible = True
End Sub