eğer metin alanları sıralı ise belki tag özelliği işinize yarayabilir
önce değerlerin olduğu metin kutularını seçip im/tag="ekle" yada istediğiniz bir şey yapın
aşağıdaki koda benzer bir şeyler deneyebilirsiniz
formdaki tum nesneleri kontrol edip im/tag="ekle" olanları txtstring ekler
Dim kutu As Control
dim txtdeger as string
txtdeger=""
For Each kutu In Me
If kutu.Tag = "ekle" Then txtdeger= iif(isnull(txtdeger);kutu;"," & kutu)
Next
DoCmd.RunSQL "INSERT INTO tablo2 (Daire,Mahalle,....) VALUES ('" & txtstring & "')"
If kutu.Tag = "ekle" Then txtdeger= iif(isnull(txtdeger);kutu;"," & kutu)
kırmızı syntx hatası veriyor
;kutu; değerinin işaretlerini , yapınca syntx hatası gidiyor
If kutu.Tag = "ekle" Then txtdeger= iif(isnull(txtdeger),kutu,"," & kutu)
bu sefer de sorgu değerleri ile hedef alanlarının sayısı aynı değil
hatası alıyorum
Private Sub Komut62_Click()
Dim kutu As Control
Dim txtDeger As String
txtDeger = ""
For Each kutu In Me
If kutu.Tag = "ekle" Then txtDeger = txtDeger & IIf(txtDeger = "", kutu, "','" & kutu)
Next
DoCmd.RunSQL "INSERT INTO tablo2 (adı,soyadı,tc) VALUES ('" & txtDeger & "')"
End Sub
kodu düzelttim
2. yöntem olarak eğer alanlar sıralı ise
1. alan= metin1
2. alan =metin2
…….
125alan =metin125
biçimimde ise ve aynı formd ise
for i=1 to metin kutusu sayısı
txtdeger=txtDeger & iif(txtdeger="",controls("metin" & i),"','" & controls("metin" & i))
next
DoCmd.RunSQL "INSERT INTO tablo2 (adı,soyadı,tc) VALUES ('" & txtstring & "')"
farklıformda ise mesela form2 de ise
forms("form2")
for i=1 to metin kutusu sayısı
txtdeger=txtDeger & iif(txtdeger="",forms("form2").controls("metin" & i),"','" & forms("form2").controls("metin" & i))
next
DoCmd.RunSQL "INSERT INTO tablo2 (adı,soyadı,tc) VALUES ('" & txtstring & "')"
olmadı hocam ya
sorgu değerleri ile hedef alanlarının sayısı aynı değil
hatası yada
syntx hatası veriyor
ya da
beceremedim
teşekkür ederim
Zafer bey 9. Mesajdaki kodu kendimde denedigimde hata vermedi
Noktalama işaretlerini iyice kontrol edip tekrar dener misiniz
Private Sub Komut62_Click()
Dim kutu As Control
Dim txtDeger As String
txtDeger = ""
For Each kutu In Me
If kutu.Tag = "ekle" Then txtDeger = txtDeger & IIf(txtDeger = "", kutu, "','" & kutu)
Next
DoCmd.RunSQL "INSERT INTO tablo2 (adı,soyadı,tc) VALUES ('" & txtDeger & "')"
End Sub
doğrudur çalıştı
kodları tekrar kontrol ettim
aynı nerede hata yaptım anlamadım
ama çalışıyor teşekkür ederim Haliliyas hocam sizden kaçmayacağını biliyordum