userform yardım

Katılım
27 Ocak 2021
Mesajlar
96
Excel Vers. ve Dili
2019 turkce
merhabalar çalıştıgım kitabda useform ekli butona tıklayınca textboxda yazılı olan ismi
sheets(1) de a sütununda son boş hücreye ekleyerek yazıyor aynı zamanda o isimler listboxta listeleniyor
ben istiyorumki aynı isim yazılı ise birdaha yazmasın çünkü oradaki isimlerle sayfa oluşturuyorum
yazdığım kodla aynı ismi yazıyor yardımcı olursanız sevinirim bu arada textboxa isim adını verdim

Private Sub PERSONEL_EKLE_BUTON_Click()
Dim sonsatir As Long, rng As Range, rng2 As Range
Application.ScreenUpdating = False
ActiveWorkbook.Unprotect "123"
Sheets("PERSONEL").[A1] = ADSOYAD.Caption
sonsatir = Sheets("PERSONEL").Range("A1048576").End(xlUp).Row
For Each rng2 In Sheets("PERSONEL").Range("A2:A" & sonsatir)
If rng2 = isim.Text Then
GoTo devam
Else
Sheets("PERSONEL").Range("A" & sonsatir + 1).Value = isim.Text
End If
devam:
Next
liste.Clear
For Each rng In Sheets("PERSONEL").Range("A2:A" & sonsatir + 1)
liste.AddItem rng.Value
Next rng
Call Sayfa_olustur

ActiveWorkbook.Protect "123", Structure:=True, Windows:=False
Application.ScreenUpdating = True
End Sub
 
Katılım
17 Mart 2022
Mesajlar
281
Excel Vers. ve Dili
2016/Türkçe
Altın Üyelik Bitiş Tarihi
22-03-2023
Selam,
Mükerrer kaydı engellemek için aşağıdaki kodu sayfanın kod kısmına yapıştırın;
Hücre bilgilerini kendinize göre uyarlarsınız.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
sat = Target.Row
süt = Target.Column
If sat >= 3 And süt = 6 And Cells(sat, süt) <> "" Then
If WorksheetFunction.CountIf(Range("F2:F" & sat - 1), Cells(sat, süt)) >= 1 Then
MsgBox (" Bu Kayıt Daha Önce Girilmiş."), vbCritical
Cells(sat, süt) = ""
End If
End If
End Sub
 
Katılım
27 Ocak 2021
Mesajlar
96
Excel Vers. ve Dili
2019 turkce
Selam,
Mükerrer kaydı engellemek için aşağıdaki kodu sayfanın kod kısmına yapıştırın;
Hücre bilgilerini kendinize göre uyarlarsınız.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
sat = Target.Row
süt = Target.Column
If sat >= 3 And süt = 6 And Cells(sat, süt) <> "" Then
If WorksheetFunction.CountIf(Range("F2:F" & sat - 1), Cells(sat, süt)) >= 1 Then
MsgBox (" Bu Kayıt Daha Önce Girilmiş."), vbCritical
Cells(sat, süt) = ""
End If
End If
End Sub
use form kodunu şu şekilde düzelttim oldu fakat sayfa oluştururken fazladan bir sayfa daha oluşturuyor ve aynı isim hatası veriyor
Private Sub PERSONEL_EKLE_BUTON_Click()
Dim sonsatir As Long, rng As Range, rng2 As Range
Application.ScreenUpdating = False
ActiveWorkbook.Unprotect "123"
Sheets("PERSONEL").[A1] = ADSOYAD.Caption
sonsatir = Sheets("PERSONEL").Range("A1048576").End(xlUp).Row
For Each rng2 In Sheets("PERSONEL").Range("A2:A" & sonsatir)
If rng2 = isim.Text Then
MsgBox "aynı isim zaten ekli"
GoTo devam
Else
Sheets("PERSONEL").Range("A" & sonsatir + 1).Value = isim.Text
Sheets(3).Copy After:=Worksheets(Worksheets.Count)
Sheets(Sheets.Count).Name = isim.Text
End If
Next
liste.Clear
For Each rng In Sheets("PERSONEL").Range("A2:A" & sonsatir + 1)
liste.AddItem rng.Value
Next rng
devam: Exit Sub
ActiveWorkbook.Protect "123", Structure:=True, Windows:=False
Application.ScreenUpdating = True
End Sub
 
Üst