Metin Kutularındaki Verileri Tabloda Tek Alana Ekleme

06/07/2015, 09:12

Allback

Merhaba,

Çok aradım ama bulamadım.

Formda adı-soyadı diye alt alta bir kaç tane metin kutusu var. Bu metin kutularına girilen verileri, tablodaki alana alt alta eklemesini istiyorum. (Boş olanları eklemesin, yani boşuna boş kayıt oluşturmasın)

Insert komutu ile eklemek istediğimde sorgu alanı ile hedef alan eşit değil hatası veriyor. Nasıl yapabilirim. (Amaç, her ismi tek tek yaz ekleye bas yapmak yerine bir seferde hepsini yazıp kaydetmek.

Yazmaya çalıştığım kod aşağıdaki gibidir.

Kod:
DoCmd.RunSQL "INSERT INTO hazirlayan_tablosu ([hazirlayan]) VALUES ('" & Me.Metin10 & "','" & Me.Metin12 & "','" & Me.Metin14 & "','" & Me.Metin16 & "','" & Me.Metin18 & "','" & Me.Metin20 & "','" & Me.Metin22 & "','" & Me.Metin24 & "')"
06/07/2015, 10:52

atoz112

sayın Allback,

EK'te;
bahsettiğiniz talebinize yönelik olarak hazırlanmış örnek uygulama mevcuttur.inceleyebilirsiniz.bilginize.

iyi çalışmalar,
saygılar.
06/07/2015, 11:06

Allback

(06/07/2015, 10:52)atoz112 yazdı: sayın Allback,

EK'te;
bahsettiğiniz talebinize yönelik olarak hazırlanmış örnek uygulama mevcuttur.inceleyebilirsiniz.bilginize.

iyi çalışmalar,
saygılar.

Çok teşekkürler, ellerinize sağlık
06/07/2015, 14:24

Allback

Kod çok güzel çalışıyor fakat şöyle bir durum var.

Bu kod sayfaya eklediğim başka metin kutularına da aynı işlemin uygulanmasını sağlıyor. Ben ise sadece benim istediğim metin kutularını, belirlediğim tablodaki alanlara alt alta eklemek istiyorum.

Aynı forma başka metin kutuları ekleyip, bu metin kutularına girilen verileri de başka bir ekle butonuyla farklı tabloya eklemek istediğimde bu kodu kullanamıyorum.

Bunun için kodu nasıl değiştirebiliriz?

Örnek dosyayı ekledim...
07/07/2015, 11:47

ozanakkaya

(06/07/2015, 14:24)Allback yazdı: sayfaya eklediğim başka metin kutularına da aynı işlemin uygulanmasını

Tabloya veri kaydedilecek metin kutularının im özelliğine 1 yaz, başka metin kutusu olarak kastettiğiniz metin kutularının im özelliği boş kalsın veya 0 yaz




kodu aşağıdaki ile değiştir.

Private Sub ekle_Click()

DoCmd.RunCommand acCmdSaveRecord
DoCmd.SetWarnings False
For Each ctl In Me.Controls
     If ctl.ControlType = acTextBox Then
          If Not (IsNull(ctl.Value) Or ctl.Value = "") Then
          If ctl.Tag = "1" Then
               booFilledBox = True
               DoCmd.RunSQL "INSERT INTO hazirlayan_tablosu ([hazirlayan]) VALUES ('" & ctl.Value & "')"
               End If
          End If
     End If
Next ctl

DoCmd.SetWarnings True
sil
End Sub

Farklı tabloya veri kaydetmek istiyorsanız insert into kodundaki tablo adı kısmını değiştirmeniz ve kodu tablodaki alanlara göre düzenlemeniz gerekli.

Konu başlığından farklı sorunuz var ise yeni konu açarak sorunuz. Örnek uygulamanızı sıkıştırıp/onararak ekleyiniz.
07/07/2015, 14:45

Allback

Teşekkür ederim. Kodu dediğiniz gibi uyguladım.

Sorun çözüldü.