AccessTr.neT

Tam Versiyon: Docmd Komutunun Çok Alanlı Yapıya Uygulanması
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
Ekli uygulamamda, tablo ve dolayısıyla formumda sadece Alan1 varsa, butonun tıklanma olayına yazmış olduğum ;

Kod:
DoCmd.GoToControl "Alan1"
DoCmd.RunCommand acCmdCopy
DoCmd.GoToRecord , , acNewRec
DoCmd.GoToControl "Alan1"
DoCmd.RunCommand acCmdPaste

komutu gayet güzel çalışıyor. Ne zaman ki Alan2 yi ekliyorum o zaman buton içindeki kodlar çalışmıyor. Neyi yanlış yapıyorum? Tşk..
Bu yöntemde işlem şu şekilde yapılıyor

1- Alan1'e git
2- Bu alanı belleğe kopyala
3- Yeni bir kayıt aç
4- Alan1'e git
5- Bellekteki kaydı buraya yapıştır

Bu yöntemde kayıtları tek tek kopyalamak zorundasınız. Ama değişkenlere atayarak istediğiniz kadar kaydı kopyalayabilirsiniz. Bunun için iki değişken açalım:
Kod:
Dim Accesstr_Alan1, Accesstr_Alan2 As String


Şimdi de bu değişkenlere Alan1 ve ALan2 değerlerini aktaralım

Kod:
Accesstr_Alan1 = Me.Alan1
Accesstr_Alan2 = Me.Alan2

Artık yeni kayıt açalım
Kod:
DoCmd.GoToRecord , , acNewRec


Şimdi de değişkenlerdeki değerleri yeni alanlara yapıştıralım.
Kod:
Me.Alan1 = Accesstr_Alan1
Me.Alan2 = Accesstr_Alan2


İşlem bu kadar. Toplu olarak çalışmanızdaki düğme kodu şöyle:

Kod:
Dim Accesstr_Alan1, Accesstr_Alan2 As String
Accesstr_Alan1 = Me.Alan1
Accesstr_Alan2 = Me.Alan2
DoCmd.GoToRecord , , acNewRec
Me.Alan1 = Accesstr_Alan1
Me.Alan2 = Accesstr_Alan2

Kolay gelsin.
(06/09/2018, 22:19)mehmetdemiral yazdı: [ -> ]Bu yöntemde işlem şu şekilde yapılıyor

1- Alan1'e git
2- Bu alanı belleğe kopyala
3- Yeni bir kayıt aç
4- Alan1'e git
5- Bellekteki kaydı buraya yapıştır

Bu yöntemde kayıtları tek tek kopyalamak zorundasınız. Ama değişkenlere atayarak istediğiniz kadar kaydı kopyalayabilirsiniz. Bunun için iki değişken açalım:
Kod:
Dim Accesstr_Alan1, Accesstr_Alan2 As String


Şimdi de bu değişkenlere Alan1 ve ALan2 değerlerini aktaralım

Kod:
Accesstr_Alan1 = Me.Alan1
Accesstr_Alan2 = Me.Alan2

Artık yeni kayıt açalım
Kod:
DoCmd.GoToRecord , , acNewRec


Şimdi de değişkenlerdeki değerleri yeni alanlara yapıştıralım.
Kod:
Me.Alan1 = Accesstr_Alan1
Me.Alan2 = Accesstr_Alan2


İşlem bu kadar. Toplu olarak çalışmanızdaki düğme kodu şöyle:

Kod:
Dim Accesstr_Alan1, Accesstr_Alan2 As String
Accesstr_Alan1 = Me.Alan1
Accesstr_Alan2 = Me.Alan2
DoCmd.GoToRecord , , acNewRec
Me.Alan1 = Accesstr_Alan1
Me.Alan2 = Accesstr_Alan2

Kolay gelsin.

Teşekkürler, çok açıklayıcı olmuş..