[VBA] Liste kutusundan çoklu seçimle yapılan kayda mükerrer kontrolü ve uyarısı
#1
Herkese merhaba,

aşağıdaki kodlarla buton ile form üzerindeki arac liste kutusundan çoklu seçim yaparak cetele tablosuna çoklu kayıt yaptırabilmekteyim.

Visual Basic
  1. Dim Sayac As Long
  2.  
  3. If arac.ListIndex > -1 And tarife.ListIndex > -1 Then
  4.  
  5. For Sayac = 0 To Me.arac.ListCount - 1
  6. If Me.arac.Selected(Sayac) = True Then
  7. CurrentDb.Execute "INSERT INTO cetele ( tarih, aracid, tutar, verdi ) " & _
  8. "SELECT '" & Me.tarih & "' AS trh, " & Me.arac.Column(0, Sayac) & " AS arc, " & Me.tarife & " AS trf, " & Me.verdi & " AS vrd "
  9. End If 'Debug.Print
  10. Next Sayac
  11. DoCmd.Close
  12. Else
  13. MsgBox "Araç ve tarife seçimi yapınız..", vbCritical, "Sahil Taksi"
  14. End If



yapmak istediğim şey şudur ki; kaydet butonuna bastığımda, tarih ve aracid kriter alınarak cetele tablosundan mükkerrer kontrolü yapılacak, mükerrer kayıt varsa uyarı verecek.
normalde mükerrer kontrolü nasıl yapılır biliyorum ama arac liste kutusundan çoklu seçim yapılarak çoklu kayıt yapıldığı için kontrolü nasıl yaptırabileceğimi bir turlu bulamadım.

diyelim ki 3 araç seçtim ve bunlardan biri ile kayıt yaptıysam o tarih için, sadece o araç için mükerrer uyarısı vermeli ve diğer iki araç için ise normal kayıt işlemi yapmalı.

şöyle bir şeyler denedim ama çalışmadı. (baya karıştırdım, saçmaladım biliyorum Smile kafa durdu sanki.) kodları o kadar kurcaladım ki sonunda böyle değişik bir noktaya geldim.

yardımcı olursanız sevinirim.

İhtiyaç olursa şu konuda örnek dosyam mevcut.
http://www.access-sql.com/Konu-liste-kut...apamiyorum

Visual Basic
  1. Dim Sayac As Long
  2.  
  3. If arac.ListIndex > -1 And tarife.ListIndex > -1 Then
  4.  
  5. For Sayac = 0 To Me.arac.ListCount - 1
  6. If DCount("*", "cetele", "[aracid]=" & Me.arac.Column(0, Sayac) & " AS arc, " & " And [tarih]=#" & Format(Me.tarih, "mm\/dd\/yyyy") & "#" & "' AS trh, ") > 0 Then
  7. MsgBox "burada plaka yazacak" & " Plaka ve " & Format(Me.tarih, "dd\/mm\/yyyy") & " Tarihine ait kayit var", vbCritical, "Sahil Taksi"
  8. Else
  9.  
  10. If Me.arac.Selected(Sayac) = True Then
  11. CurrentDb.Execute "INSERT INTO cetele ( tarih, aracid, tutar, verdi ) " & _
  12. "SELECT '" & Me.tarih & "' AS trh, " & Me.arac.Column(0, Sayac) & " AS arc, " & Me.tarife & " AS trf, " & Me.verdi & " AS vrd "
  13. End If 'Debug.Print
  14. End If
  15. Next Sayac
  16. DoCmd.Close
  17. Else
  18. MsgBox "Araç ve tarife seçimi yapınız..", vbCritical, "Sahil Taksi"
  19. End If







  Alıntı
Bu mesajı beğenenler:
#2
Visual Basic
  1. Private Sub Komut18_Click()
  2. Dim Sayac As Long
  3. If arac.ListIndex > -1 And tarife.ListIndex > -1 Then
  4. For Sayac = 0 To Me.arac.ListCount - 1
  5. If Me.arac.Selected(Sayac) = True Then
  6. If DCount("*", "cetele", "[aracid]=" & Me.arac.Column(0, Sayac) & " And [tarih]=#" & Format(Me.tarih, "mm\/dd\/yyyy") & "#") > 0 Then
  7. ' MsgBox Me.arac.Column(1, Sayac) & " Plaka ve " & Format(Me.tarih, "dd\/mm\/yyyy") & " Tarihine ait kayit var", vbCritical, "Sahil Taksi"
  8. Else
  9. CurrentDb.Execute "INSERT INTO cetele ( tarih, aracid, tutar, verdi ) " & _
  10. "SELECT '" & Me.tarih & "' AS trh, " & Me.arac.Column(0, Sayac) & " AS arc, " & Me.tarife & " AS trf, " & Me.verdi & " AS vrd "
  11. End If 'Debug.Print
  12. End If
  13. Next Sayac
  14. Me.cetelealt.Form.Requery
  15. Else
  16. MsgBox "Araç ve tarife seçimi yapiniz..", vbCritical, "Sahil Taksi"
  17. End If
  18.  
  19. End Sub



Kaydet prosedurunu yukarida ki ile degistiriniz.



  Alıntı
Bu mesajı beğenenler:
#3
çok teşekkür ederim Sezgin bey. sorunum çözüldü elinize sağlık.



  Alıntı
Bu mesajı beğenenler:


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  [FORM] Altformda Kayıt Tıklayınca Sürekli Ilk Kayda Gidiyor. M_Kemal_Askeri 6 132 11-04-2026, 02:28
Son Mesaj: M_Kemal_Askeri
  çoklu Seçinle Kayıt Girme? kesoka 1 318 02-07-2025, 23:31
Son Mesaj: dsezgin
  Parametre Değeri Gir Uyarısı hegu 3 375 23-05-2025, 14:55
Son Mesaj: hegu
access-sql-20 [TABLO] Liste Kutusu-çoklu Seçim özellikli Alana Excelden Verileri Yapıştırma mkoblayek 18 1.057 18-02-2025, 08:49
Son Mesaj: mkoblayek
  çoklu Kullanıcılarda Mükerrer Evrak Numarası (transaction) kaburkan 4 425 09-01-2025, 13:26
Son Mesaj: celalll
  Acceste Liste Kutusundan Seçilen Veriyi Metin Kutusuna Gönderme Pasham 24 1.436 04-04-2024, 01:18
Son Mesaj: halily
  [FORM] form klasör içinde dosya kontrolü obaysal42 4 2.496 29-12-2023, 10:24
Son Mesaj: burhanb
  Farklı Tablodan Mükerrer Olmayan Bilgi Almak bilservisci 5 530 17-12-2023, 18:04
Son Mesaj: dsezgin

Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar):