- Katılım
- 30 Mart 2010
- Mesajlar
- 240
- Excel Vers. ve Dili
- 2007,2010,2013
- Altın Üyelik Bitiş Tarihi
- 29-05-2021
Merhaba, userformda silme işlemi yaptıktan sonra userform yükleniyor fakat hemen kapanıyor. ShowModal=False durumunda. Yazdığım kod aşağıdaki gibidir. Sorunun kaynağı sizce ne olabilir?
Teşekkürler.
Teşekkürler.
Kod:
Private Sub cmd_sil_Click()
Dim Sh As Worksheet, ss As Integer
Set Sh = Sheets(11)
On Error Resume Next
If ListBox1.ListIndex = -1 Then Exit Sub
Application.ScreenUpdating = False
silinecek = ListBox1.ListIndex + 4
onay = MsgBox("Seçili olan kayıt silinsin mi?", vbYesNo, "ONAY")
If onay = vbNo Then Exit Sub
verid = Sheets(11).Cells(silinecek, "D").Value
verie = Sheets(11).Cells(silinecek, "E").Value
For i = 1 To Sheets(6).Range("B51").End(3).Row
If verid = Sheets(6).Cells(i, "D").Value And verie = Sheets(6).Cells(i, "E").Value Then
Sheets(6).Rows(i).ClearContents
End If
Next i
Sheets(6).Select
Range("A2:M51").Sort Range("B2")
ss = Sheets(6).Range("D51").End(3).Row
For i = 1 To ss - 1
Sheets(6).Range("B" & i + 1).Value = i
Next i
Application.DisplayAlerts = False
Sheets(Sh.Cells(silinecek, 12).Value).Delete
Sh.Rows(silinecek).ClearContents
Sheets(11).Select
Range("B4:M18").Sort Range("B4")
Application.DisplayAlerts = True
'yeniden sıralama
ss = Sh.Range("D19").End(3).Row
For i = 1 To ss - 3
Sh.Range("B" & i + 3).Value = i
Next i
'sildikten sonraki sayfa adı
For j = 4 To Sheets(11).Range("B" & Rows.Count).End(xlUp).Row
hucre = Sheets(11).Range("L" & j)
sayi = Mid(hucre, 1, 2)
If IsNumeric(sayi) = True Then
Sheets(11).Range("L" & j) = Replace(Sheets(11).Range("L" & j), sayi, Sheets(11).Range("B" & j) & " ")
eskiad = Sheets(11).Range("M" & j).Value
yeniad = Sheets(11).Range("L" & j).Value
If [eskiad] <> [yeniad] Then
Sheets(eskiad).Select
Sheets(eskiad).Name = [yeniad]
Sheets(11).Range("M" & j).Value = Sheets(11).Range("L" & j).Value
End If
If eskiad = yeniad Then
End If
Sheets(11).Select
End If
Next j
Dim aranacaksatir As Integer
For aranacaksatir = 4 To Sheets(11).Range("B19").End(3).Row
verid = Sheets(11).Cells(aranacaksatir, "D").Value
verie = Sheets(11).Cells(aranacaksatir, "E").Value
For i = 1 To Sheets(6).Range("B51").End(3).Row
If verid = Sheets(6).Cells(i, "D").Value And verie = Sheets(6).Cells(i, "E").Value Then
Sheets(6).Cells(i, "L").Value = Sheets(11).Cells(aranacaksatir, "L").Value
Sheets(6).Cells(i, "M").Value = Sheets(11).Cells(aranacaksatir, "M").Value
End If
Next i
Next aranacaksatir
Sheets(11).Select
Application.ScreenUpdating = True
UserForm_Initialize
UserForm1.Show 0
End Sub