Sütunda aynı veri varsa

Katılım
1 Mart 2005
Mesajlar
91
merhabalar. elimde iki combobox var. combobox1 a2:a1000 arası combobox2 b2:b1000 arası verileri alıyor. kayıt yaparken bu iki combobox kullanıyorum. listeyi ordan çekiyor değişmesine izin veriyorum. istediğim şey bu ikisinde de veriler aynı ise sütunlarında uyarı verip kayıt yapmasın. biri dahi aynı veriye sahip olsada. aşağıda birinci şartı gerçekleştirdim ama ikinci comboboxta loop hatası veriyor. nasıl yapabilirim

Private Sub CommandButton1_Click()


If ComboBox1.Value <> "" Then
Sheets("FiyatStok").Activate
Cells(1, 1).Select
Do While ActiveCell.Value <> ""
If Trim(ActiveCell.Value) = Trim(Me.ComboBox1.Value) Then
If MsgBox(Me.ComboBox1 & " adında ürün bulunmaktadır" & " Tekrar Deneyiniz") Then ComboBox1.Value = ""
Exit Sub

End If

ActiveCell.Offset(1, 0).Activate

Loop
ActiveCell.Value = ComboBox1.Value
ActiveCell.Offset(0, 1).Value = TextBox2.Value
MsgBox "İşlem Tamam"
End If

End Sub
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,500
Excel Vers. ve Dili
2019 Türkçe
Merhaba.
Kod:
Private Sub CommandButton1_Click()
    Dim Bul As Range
    Dim SonSatir As Long
    With Worksheets("FiyatStok")
        SonSatir = .Cells(Rows.Count, "A").End(xlUp).Row + 1
        Set Bul = .Range("A:A").Find(what:=ComboBox1.Text, lookat:=xlWhole)
        If Bul Is Nothing Then
            .Cells(SonSatir, "A").Value = ComboBox1.Value
            .Cells(SonSatir, "B").Value = TextBox2.Value
            MsgBox "İşlem Tamam"
        Else
            MsgBox (Me.ComboBox1.Text & " adında ürün bulunmaktadır" & " Tekrar Deneyiniz")
            ComboBox1.Value = ""
        End If
    End With
End Sub
 
Katılım
1 Mart 2005
Mesajlar
91
Merhaba.
Kod:
Private Sub CommandButton1_Click()
    Dim Bul As Range
    Dim SonSatir As Long
    With Worksheets("FiyatStok")
        SonSatir = .Cells(Rows.Count, "A").End(xlUp).Row + 1
        Set Bul = .Range("A:A").Find(what:=ComboBox1.Text, lookat:=xlWhole)
        If Bul Is Nothing Then
            .Cells(SonSatir, "A").Value = ComboBox1.Value
            .Cells(SonSatir, "B").Value = TextBox2.Value
            MsgBox "İşlem Tamam"
        Else
            MsgBox (Me.ComboBox1.Text & " adında ürün bulunmaktadır" & " Tekrar Deneyiniz")
            ComboBox1.Value = ""
        End If
    End With
End Sub
muzaffer bey teşekkür ederim ikinci combobox içinde aynısı olmalı. yani combobox1 kontrol etti aynı veri yoksa devam edip combobox2 ye bakacak ondaki veri b sütununda varsa uyarı verip comboboxı boşaltacak yoksa yani hem combobox1 hem combobox2 kendi sütunlarında aynı veri yoksa kayıt yapacak. Combobox1: rowsource A, combobox2 rowsource B
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,500
Excel Vers. ve Dili
2019 Türkçe
Deneyiniz.
Kod:
Private Sub CommandButton1_Click()
    Dim SonSatir As Long
    With Worksheets("FiyatStok")
        SonSatir = .Cells(Rows.Count, "A").End(xlUp).Row + 1

        If Not .Range("A:A").Find(what:=ComboBox1.Text, lookat:=xlWhole) Is Nothing Then
            MsgBox (Me.ComboBox1.Text & " adında ürün bulunmaktadır" & " Tekrar Deneyiniz")
            ComboBox1.Value = ""
            
        ElseIf Not .Range("B:B").Find(what:=ComboBox2.Text, lookat:=xlWhole) Is Nothing Then
            MsgBox (Me.ComboBox2.Text & " adında ürün bulunmaktadır" & " Tekrar Deneyiniz")
            ComboBox2.Value = ""
        Else
            .Cells(SonSatir, "A").Value = ComboBox1.Value
            .Cells(SonSatir, "B").Value = ComboBox2.Value
            MsgBox "İşlem Tamam"
        End If
    End With
End Sub
 
Katılım
1 Mart 2005
Mesajlar
91
Deneyiniz.
Kod:
Private Sub CommandButton1_Click()
    Dim SonSatir As Long
    With Worksheets("FiyatStok")
        SonSatir = .Cells(Rows.Count, "A").End(xlUp).Row + 1

        If Not .Range("A:A").Find(what:=ComboBox1.Text, lookat:=xlWhole) Is Nothing Then
            MsgBox (Me.ComboBox1.Text & " adında ürün bulunmaktadır" & " Tekrar Deneyiniz")
            ComboBox1.Value = ""
           
        ElseIf Not .Range("B:B").Find(what:=ComboBox2.Text, lookat:=xlWhole) Is Nothing Then
            MsgBox (Me.ComboBox2.Text & " adında ürün bulunmaktadır" & " Tekrar Deneyiniz")
            ComboBox2.Value = ""
        Else
            .Cells(SonSatir, "A").Value = ComboBox1.Value
            .Cells(SonSatir, "B").Value = ComboBox2.Value
            MsgBox "İşlem Tamam"
        End If
    End With
End Sub
Çok teşekkürler Muzaffer bey kolay gelsin
 
Üst