Coba dengan Fungsi dibawah ini.
Letakkan dalam module umum
Contoh file ImportTeksWithToken.zip sudah saya upload ke bagian
files / HotCases.
mdh2-an bisa berguna.
Edy WIYONO
'---------kodemulai----------------------------
Option Compare Database
Function OpenText(ByVal FileNameWithExtention As String, ByVal
NamaTabel As String)
Dim TextLine As String
Open FileNameWithExtention For Input As #1 ' Open file.
Do While Not EOF(1) ' Loop until end of file.
Line Input #1, TextLine ' Read line into variable.
x = Split(Trim(TextLine), "!")
If Len(x(0)) <> 0 Then
AA = x(0)
Else
x(0) = AA
End If
a = Trim(x(0))
b = Trim(x(1))
c = Trim(x(2))
strSQL = "INSERT INTO " & NamaTabel & " (Kode, CCY, Eqv_IDR)
VALUES ('" & a & "','" & b & "','" & c & "')"
Call SQLNye(strSQL)
Loop
Close #1
End Function
Function SQLNye(ByVal strSQL As String)
DoCmd.SetWarnings False
DoCmd.RunSQL strSQL, True
DoCmd.SetWarnings True
End Function
Function DeleteTable(ByVal NamaTabel As String)
On Error GoTo salah
DoCmd.DeleteObject acTable, NamaTabel
strSQL = "CREATE TABLE " & NamaTabel & "(RecID Counter, Kode Text
(15),CCY Text(50), Eqv_IDR Currency)"
Call SQLNye(strSQL)
keluar:
Exit Function
salah:
Select Case Err.Number
Case 7874
strSQL = "CREATE TABLE " & NamaTabel & "(RecID Counter, Kode
Text(15),CCY Text(50), Eqv_IDR Currency)"
Call SQLNye(strSQL)
Case Else
Debug.Print Err.Number & vbCrLf & Err.Description
Resume keluar
End Select
End Function
Function JalanKan()
Call DeleteTable("Test")
Call OpenText("Test.txt", "Test")
End Function
'---------kodeakhir----------------------------
--- In [email protected], Erwin Sugiawan
<[EMAIL PROTECTED]> wrote:
>
> semua field dibedakan dgn tanda "!" ,
>
> kalo pake wizard (External Data/Link or Import ) ngak bisa krn
datanya tidak sesuai ( tidak semua record ada kode cabang , hal ini
di mungkinkan krn hidden record yg sama )
>
> mau ngak mau, wajib pake code
>
> buat function gettoken, utk mencari field yang di pisahkan oleh
tanda "!"
>
> S = baris text nya
> Ino= field ke berapa yg mau di ambil
>
> Function GetToken(S As Variant, iNo As Integer) As String
>
> On Error GoTo GetTokenErr:
> Dim sTemp As String, iCounter As Integer, iok As Integer, iPos As
Integer
> GetToken = ""
> sTemp = S & "!"
> iok = 0
> For iCounter = 1 To iNo - 1
> iPos = InStr(1, sTemp, "!")
> If iPos > 0 Then
> iok = iok + 1
> sTemp = Mid$(sTemp, iPos + 1)
> Else
> Exit For
> End If
> Next
> If iok = iNo - 1 And Len(sTemp) > 0 Then
> iPos = InStr(1, sTemp, "!")
> If iPos > 0 Then GetToken = Mid$(sTemp, 1, iPos - 1)
> End If
> Exit Function
> GetTokenErr:
> GetToken = ""
> Exit Function
> End Function
>
> lalu buat function untuk load text file, biasa nya setiap baris di
pisahkan oleh karakter enter ( ascii 13)
>
> yang ini udah banyak di internet, coba cari di om google dgn
subject
> how to open text file using vba
> selamat mencari
>
>
>
> Best regard
> Erwin Sugiawan
>
> ----- Original Message ----
> From: yayan s <[EMAIL PROTECTED]>
> To: [email protected]
> Sent: Friday, November 23, 2007 3:54:16 PM
> Subject: [belajar-access] Re: cara belajar vb dalam Acces?
>
>
>
>
>
>
>
>
> <!--
>
> #ygrp-mkp{
> border:1px solid #d8d8d8;font-family:Arial;margin:14px
0px;padding:0px 14px;}
> #ygrp-mkp hr{
> border:1px solid #d8d8d8;}
> #ygrp-mkp #hd{
> color:#628c2a;font-size:85%;font-weight:bold;line-
height:122%;margin:10px 0px;}
> #ygrp-mkp #ads{
> margin-bottom:10px;}
> #ygrp-mkp .ad{
> padding:0 0;}
> #ygrp-mkp .ad a{
> color:#0000ff;text-decoration:none;}
> -->
>
>
>
>
> Sebenarnya begini saya dapat data teks dengan format
> Kode Cabang!pos !ccy !
> 0001 !10000 ! kas ! Eqv IDR
> !IDR ! 1,000,000
> !USD ! 500,000
>
> !20000 ! Penempatan!
> !IDR ! 2,000,000
> !USD ! 1,500,000
> '
> '
> 'misal sampai dengan baris ke
> 100.000 atau berapa yg excel
>
> tidak sanggup
> 9999 !99999!kontinjen!
> !IDR ! 2,000,000
> !USD ! 1,500,000
>
> kemudian kita import ke acces, bila saya ingin menjumlahkan misal
rek 10000 IDR untuk semua cabang. Tentunya kalo di acces saya harus
buat seperti ini terlebih dahulu bukan?
>
> Kode Cabang!pos !ccy !
> 0001 !10000 ! kas ! Eqv IDR
> 0001 !10000 !IDR ! 1,000,000
> 0001 !10000 !USD ! 500,000
> '
> '
> dan seterusnya...
> lalu nanti kita jumlahkan menggunakan query.
>
> hanya untuk buat seperti itu di acces bagaimana caranya?
>
> --- In [email protected], Erwin Sugiawan <esugiawan@>
wrote:
> >
> > kalo lihat sepintas , bro ryan , mau buat accounting dgn multi
ccy ya.........
>
> > kalo bener....table yg wajib
> > - COA ( Chart of Account )
> > - multiccy
> >
> > lalu spy COA detail naik ke Coa header, lalukan process array
> >
> > misalkan
> > 1000 IDR Kas ---> header
>
> > 1001 IDR Kas Kecil --- > detail
> > 1002 IDR kas besar ----> detail
> >
> > 2000 IDR Bank
> > 2001 IDR BCA No 11111
> > 2002 IDR BCA NO 22343
> > 2002 USD BCA NO 22343
>
> > 2003 Mandiri No 1111
> >
> > 4000 IDR Biaya
> > 4001 IDR Sewa Kantor
> >
> > misalkan di table multi ccy 1usd =10.000
> >
> > pembayaran sewa gedung mempergunakan USD dan asumsi Balance
Sheet dalam IDR ya
>
> >
> > Journal yang di input
> > Credit 2002 USD pembayaran gedung bulan november sebesar
US100 **
> > Credit 2002 IDR pembayaran gedung bulan november sebesar
1.000.000
> > Debet 4001 IDR pembayaran gedung bulan november sebesar
> 1.000.000
> >
> >
> > ** waktu memasukan jurnal yg bukan IDR, saat after update check
ke table multiccy and add ke bawah journal tersebut
> >
> >
> > Best regard
> > Erwin Sugiawan
> >
>
> > ----- Original Message ----
> > From: ryan <yayan45@>
> > To: [email protected]
> > Sent: Friday, November 23, 2007 10:47:49 AM
>
> > Subject: [belajar-access] Re: cara belajar vb dalam Acces?
> >
> >
> > Cuman yang jadi masalah ketika jumlah sandi rekeningnya banyak
> > sehingga barisnya banyak pula bahkan excel pun tak mampu,Misal
lebih
>
> > dari kemampuan excel, bagaimana itu Bang Aksan? pake metode apa
jika
> > di accses?
> > Misal
> > Kode Cab !pos !ccy !
> > 0001 !10000 ! kas ! Eqv IDR
> > !IDR ! 1,000,000
>
> > !USD ! 500,000
> > !20000 ! Penempatan!
> > !IDR ! 2,000,000
> > !USD ! 1,500,000
> > '
> > '
> > 'misal sampai dengan baris ke
> 100.000 atau berapa yg excel
> >
> > tidak sanggup
> > 9999 !99999!kontinjen!
> > !IDR ! 2,000,000
> > !USD ! 1,500,000
> >
> >
> > --- In
> [email protected], "aksan kurdin"
> > <aksan.kurdin@> wrote:
> > >
> > > Kalau kasus seperti ini cocok dikerjakan di excel, karena bisa
>
> > manual satu
> > > per satu, access vba (baca pemrograman) adalah untuk membuat
suatu
> > pekerjaan
> > > yang memiliki pola tertentu.
> > > Kalau di excel, saya tidak pake makro kalau hanya untuk mengisi
>
> > kolom kosong
> > > tersebut dengan nilai yang sama dengan di atasnya.
> > > saya demokan ya .....
> > > Pertama kali select area yang berisi cell blank yang akan diisi
> > dengan
> > > mengambil nilai di atas cell tersebut.
>
> > > Tekan Ctrl-G untuk membuka jendela Goto
> > > Klik tombol special, dan conteng pilihan blank
> > > Selection akan dieliminir hanya yang blank saja.
> > > di kolom pertama yang blank (A2) masukkan rumus dengan
mengisikan
>
> > tanda '='
> > > gerakkan cursor ke atas (A1) sehingga kolom A2 berisi '=A1'
> > > akhiri dengan menekan tombol Ctrl-Enter, otomatis pekerjaan di
A2
> > akan
> > > dilakukan pula di cell2 yang di seleksi.
>
> > >
> > > Aksan Kurdin
> > >
> > >
> > >
> > > On 11/23/07, yayan s <yayan45@> wrote:
> > > >
> > > > Biar lebih jelas dan mohon bantuan dari para fakar
terutama
>
> > bang Aksan
> > > > nich.
> > > > saya punya tabel
> > > >
> > > > 10000 ! kas ! Eqv IDR
> > > > !IDR ! 1,000,000
> > > > !USD ! 500,000
>
> > > > 20000 ! Penempatan!
> > > > !IDR ! 2,000,000
> > > > !USD ! 1,500,000
> > > >
> > > > saya ingin rubah menjadi
> > > >
> > > > 10000 ! kas ! Eqv IDR
>
> > > > 10000 !IDR ! 1,000,000
> > > > 10000 !USD ! 500,000
> > > > 20000 ! Penempatan!
> > > > 20000 !IDR ! 2,000,000
> > > > 20000!USD ! 1,500,000
> > > >
>
> > > > kalo dixcel kita tinggal record macro kemudian edit vbnya
menjadi
> > copy
> > > > perulangan, kalo di acces bagaimana untuk kasus seperti ini
> > ya?pake query
> > > > ,atau macro rasanya ngga bisa atau mungkin ada yg bisa?
paling
>
> > pakai modul
> > > > vb mungkin ya?
> > > > Terima kasih atas bantuannya
> > > >
> > >
> >
> >
> >
> > SPAM IS PROHIBITED
> > Yahoo! Groups Links
>
>
>
>
>
>
>
>
>
_____________________________________________________________________
_______________
> Be a better sports nut! Let your teams follow you
> with Yahoo Mobile. Try it now.
http://mobile.yahoo.com/sports;_ylt=At9_qDKvtAbMuh1G1SQtBI7ntAcJ
>