/* */

Sunday, October 7, 2012

Re: [belajar-access] tambah record

 

saya coba cara yang ke 2 tapi koq run time error syntax error in '
INSERT INTO statement'

Pada tanggal 03/10/12, MBA <murid.belajaraccess@yahoo.co.id> menulis:
> biasanya kalau begini saya gunakan antara do while loop atau for next.
> terutama kalau nambah datanya dari tabel lain.
> atau kalau ngisi datanya berupa beberapa data yang berjejer dipisahkan
> oleh spasi, koma, titik koma.
>
> contohnya.
>
> untuk menambah data keterangan.
> bisa coba beberapa alternatif sbb:
>
> 1. data diletakkan di tabel lain. namanya tbl_Ket, fieldnya Ket.
>
> dim db as dao.database
> dim rsKet as dao.recordset
>
> set db = currentdb
> set rsKet=db.openrecordset("tbl_Ket")
> set rs = db.openrecordset("tblTemp")
>
> ' alternatif 1
>
> do while not (rsKet.BOF or rsKet.EOF) ' dijalankan kalau record
> di tabel tbl_Ket berisi data.
> rs.addnew
> rs!Ket=rsKet!Ket
> rs.Update
> rsKet.movenext
> loop
>
> 'alternatif 2
> 'pilih salah satu saja
>
> if not (rsKet.BOF or rsKet.EOF) then
> rsKet.movelast
> rsKet.movefirst
>
> for i=1 to rsKet.recordcount
> rs.addnew
> rs!Ket=rsKet!Ket
> rs.Update
> rsKet.movenext
> next
>
> end if
>
> rs.close
> rsKet.close
> set rs=nothing
> set rsKet=nothing
> db.close
> set db=nothing
>
>
> 2. data di letakkan / dituliskan dalam sebuah text box. misalnya ditulis:
> ABC DEF GHI --> perhatikan data dipisahkan dengan spasi.
>
> misalnya data dituliskan di form frm_Ket, di textbox txtKet.
> ada tombol IsiData.
> pada event IsiData_OnClick() dituliskan sbb:
>
> Private Sub IsiData_OnClick()
>
> x=split(txtKet.value,space(1)) --> karena dipisahkan dengan
> spasi 1
> for i=0 to ubound(x)
> docmd.setwarnings false
> docmd.runsql "INSERT INTO tblTemp (Ket) VALUES ('"
> & x(i) & "'" , true
> docmd.setwarnings true
> next
>
>
> End Sub
>
>
> 3. nomor 2 bisa juga di jadikan procedure
>
> Sub IsiData( byval Ket as string)
>
> x=split(txtKet.value,space(1)) --> karena dipisahkan dengan
> spasi 1
>
> for i=0 to ubound(x)
> docmd.setwarnings false
> docmd.runsql "INSERT INTO tblTemp (Ket) VALUES ('"
> & x(i) & "'" , true
> docmd.setwarnings true
>
> End Sub
>
> Nanti panggilnya tinggal sbb:
>
> IsiData "ABC DEF GHI"
>
>
> Semoga bisa membantu.
>
> salam hangat dan jabat erat,
>
> MBA
>
> On 10/3/2012 09:00, him mah wrote:
>>
>> saya buat VBA untuk tambah record seperti ini
>>
>> Dim db As DAO.Database
>> Dim rs As DAO.Recordset
>>
>> Set db = CurrentDb
>> Set rs = db.OpenRecordset("tblTemp")
>>
>> rs.AddNew
>> rs!Ket = "ABC"
>> rs.Update
>>
>> Set rs = Nothing
>> Set db = Nothing
>>
>> kalau seperti di atas kita hanya menambahkan satu record saja, terus
>> bagaimana kalau menambhakan lebih dari 1 misal selain "ABC",
>> ditambahkan juga "DEF",GHI" dan lainnya
>>
>> terus kalau ditambahakan nya dari tabel lainya bagaiamana misal tabel
>> "tblTEmp" untuk field [KET] ditambahkan dari field [ASAL] table
>> "tblData"
>>
>>
>
>

__._,_.___
Recent Activity:
SPAM IS PROHIBITED
.

__,_._,___

No comments:

Post a Comment