- Katılım
- 17 Ocak 2006
- Mesajlar
- 115
- Excel Vers. ve Dili
- Excel 2003 Türkçe
- Altın Üyelik Bitiş Tarihi
- 02-07-2020
Arkadaşlar bir form üzerinde bilgileri silme ve düzeltme işlemleri yapılıyor. Aynı form üzerinde isimlerin alt alta sıralandığı listbox var. Listbox'taki isme tıklayınca 4 adet textbox'a o kişinin bilgileri geliyor.
Sorunum şu: Her nedense listenin en sonundaki isime tıkladığımda o kişinin bilgileri gelmiyor. Silerken de silmiyor. Bir üstteki ismi sildikten sonra siliyor. Bununla ilgili kod aşağıda. Bu hatayı nasıl düzeltebilirim.
NOT: Veri sayfasının A sütununda sıra nolar var ve sabit.
Private Sub ListBox1_Click()
Sheets("veri").Select
On Error Resume Next
Dim x As Integer
x = Sheets("veri").Range("B:B").Cells.Find(what:=ListBox1, LookIn:=xlValues).Row
TextBox2.Value = ListBox1 'listboxtakini bul için cobobox1 de gösterir
TextBox2 = Sheets("veri").Cells(x, 2) 'bura yakadar süz için
Dim bak As Range 'buradan sonrası bul için
For Each bak In Range("B2:B" & WorksheetFunction.CountA(Range("B2:B65000")))
If StrConv(bak.Value, vbUpperCase) = StrConv(TextBox2.Value, vbUpperCase) Then
bak.Select
silnoV.Value = ActiveCell.Offset(0, 1).Value
silsinV.Value = ActiveCell.Offset(0, 2).Value
silhatV.Value = ActiveCell.Offset(0, 3).Value
If TextBox2.Text = "LÜTFEN BUNU SİLMEYİN" Then
sil.Enabled = False
düzelt.Enabled = False
Else
sil.Enabled = True
düzelt.Enabled = True
End If
Exit Sub
End If
Next bak
TextBox2.SetFocus
'MsgBox "Aradığınız is
Sorunum şu: Her nedense listenin en sonundaki isime tıkladığımda o kişinin bilgileri gelmiyor. Silerken de silmiyor. Bir üstteki ismi sildikten sonra siliyor. Bununla ilgili kod aşağıda. Bu hatayı nasıl düzeltebilirim.
NOT: Veri sayfasının A sütununda sıra nolar var ve sabit.
Private Sub ListBox1_Click()
Sheets("veri").Select
On Error Resume Next
Dim x As Integer
x = Sheets("veri").Range("B:B").Cells.Find(what:=ListBox1, LookIn:=xlValues).Row
TextBox2.Value = ListBox1 'listboxtakini bul için cobobox1 de gösterir
TextBox2 = Sheets("veri").Cells(x, 2) 'bura yakadar süz için
Dim bak As Range 'buradan sonrası bul için
For Each bak In Range("B2:B" & WorksheetFunction.CountA(Range("B2:B65000")))
If StrConv(bak.Value, vbUpperCase) = StrConv(TextBox2.Value, vbUpperCase) Then
bak.Select
silnoV.Value = ActiveCell.Offset(0, 1).Value
silsinV.Value = ActiveCell.Offset(0, 2).Value
silhatV.Value = ActiveCell.Offset(0, 3).Value
If TextBox2.Text = "LÜTFEN BUNU SİLMEYİN" Then
sil.Enabled = False
düzelt.Enabled = False
Else
sil.Enabled = True
düzelt.Enabled = True
End If
Exit Sub
End If
Next bak
TextBox2.SetFocus
'MsgBox "Aradığınız is