Jumat, 21 Desember 2012

[belajar-excel] Digest Number 1978

Milis Belajar Microsoft Excel

13 New Messages

Digest #1978
1b
Mengubah angka hasil dari database menjadi huruf by "agung.widodo01@id.panasonic.com" aghoenx1
1c
Re: membuat duk pns otomatis by "Dian Anas" anassheva20
1f
Re: Mengubah angka hasil dari database menjadi huruf by "Mr. Kid" nmkid.family@ymail.com
4a
Re: Data mismatch dimana ya? by "Heru Safrudin" superheruu
5
Link Data Antar Sheet by "Andre Rahmaidy Teeza" andre_teeza_bn

Messages

Thu Dec 20, 2012 7:08 pm (PST) . Posted by:

"Jan Raisin"

Maaf, balasnya lama..

sebetulnya Jan inginnya mas Anas agak sedikit kreatif memberikan contoh
model inputannya, tetapi yang dimunculkan modelnya sama. ini yang sempat
bikin Jan hopeless, mungkin saja mas Anas yang terlalu sibuk jadi tidak
sempat untuk berkrasi ria sehingga tidak sempat membuat apa yang Jan minta

Gini aja kali ya.. karena Jan lagi malas untuk bikin desain dan data dummy
(niatnya sih mau dibikin data dummy aja) maka Jan akan menawarkan sebuah
solusi yang sangat simpel dan mudah, tanpa perlu banyak coding script VBA,
tanpa harus memikirkan desain untuk inputnya, pokoknya simple tetapi tidak
murahan dan tampilannya juga lumayan oke dan tidak mengecewakan.

Tapi ada syaratnya ya.. Yang ini wajib, kudu, harus, musti diikuti.. jika
tidak maka gagal lah hasil Jan merenung di pojok kamar setiap malam sambil
menunggu sang pangeran yang akan datang menyelamatkan Jan sambil menunggang
kuda putih xixixi.. (Lebay Mode ON)

1. Hasil input harus disusun sebagai sebuah database yang baik
2. Database mulai dari cell A1 dengan baris 1 adalah header datanya
3. Isi data dimulai dari baris 2
4. Tidak ada merge cell baik di header maupun di dalam data
5. Tidak ada baris/ kolom kosong antar data
6. Database disusun dengan orientasi vertikal (dari atas ke bawah)
7. Tipe data setiap kolom harus seragam dan benar
8. Database memiliki 1 buah kolom yang berfungsi sebagai Primary Key
yang bersifat unik (tidak ada yang sama antar data, dalam kasus ini adalah
NIP)
9. Sebaiknya database dibuat menjadi Tabel/List, pada excel 2007 ke atas
dapat diakses melalui ribbon Home >> Styles >> Format as Table, pada versi
2003 ke bawah diakses melalui Data >> List >> Create List

langkah selanjutnya adalah mengaktifkan fitur Data Form-nya Excel, pada
Excel 2007 ke atas diaktifkan dengan cara:
Masuk ke menu Excel Option >> Quick Acces Toolbar >> pada kotak Choose
command form, pilih Commands not in the ribbon >> klik Form >> klik Add >>
klik OK. Untuk versi 2003 ke bawah Jan tidak mengetahui fitur ini diakses
melalui apa.. semoga ada Be-Exceler lain yang masih memiliki versi 2003
bersedia untuk menjelaskannya.

Jika langkah di atas dilakukan dengan benar, maka seharusnya di pojok kiri
atas akan muncul satu buah icon baru bernama Form.

Cara kerjanya gimana?
untuk input data baru, klik icon Form sehingga muncul kotak seperti ini:
[image: Gambar sisip 1]

untuk melakukan input data baru, tarik scroll bar sampai ke paling bawah,
sehingga Form akan terlihat kosong, setelah itu input semua data yang
diinginkan, setelah selesai klik "NEW"

untuk Edit dan Deletenya gimana?

sebelum masuk ke tahap ini, ada kode yang harus ditulis dahulu di worksheet
yang berisi database dengan event Before Double Click
cara memunculkannya, dari lembar kerja Excel, tekan tombol ALT F11 >>
double klik nama sheetnya >> ganti General dengan Worksheet >> pilih
BeforeDoubelClick
copas scriptnya berikut ke dalam VBE:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
With Target
If .Count = 1 Then
If .Column = 2 And .Row > 2 Then
Range("a1").Select
ActiveSheet.ShowDataForm
End If
End If
End With
End Sub

untuk script di atas tidak Jan sertakan keterangannya, nanti kalo ingin
mempelajari VBA lebih dalam tidak hanya mau terima jadi saja, Jan akan coba
terangkan sejelas-jelasnya.

cara edit atau delete-nya adalah dengan cara melakukan double click pada
nama yang ingin diedit atau didelete, jika hanya edit maka setelah
melakukan Edit harus menekan tombol New, jika delete maka harus menekan
tombol Delete setelah sebelumnya memilih data yang ingin dihapus.

kalo ingin mencari data tinggal klik Criteria, masukkan kriteria pencarian
lalu tekan tombol Enter

Untuk pembuatan laporannya dapat menggunakan fitur Pivot table, ini adalah
cara yang paling mudah karena hanya dibutuhkan melakukan drag & drop saja.
(coba pelajari cara mnggunaan Pivot Table)

Gimana? simpel tetapi efektifkan.. seharusnya ini akan sangat mudah bagi
newbie sekalipun
Sortnya datanya gimana? Manual dulu aja deh... nanti di sesi berikutnya
insya ALLAH akan Jan ajari bagaimana cara sort data, yang paling mudah
adalah dengan melakukan rekam macro. Atau mungkin ada Be-Exceler yang
bersedia menambahkan script sortirnya.. sangat dipersilakan, karena punya
ilmu gak boleh disimpan untuk diri sendiri.

Best Regard

-Ms. Jan Raisin-

Pada 17 Desember 2012 17:16, Dian Anas <anassheva20@yahoo.com> menulis:

> **
>
>
> terima kasih untuk penyelesaianya untuk duk, tapi saya masih ada
> permasalahan. jika data yang ada dalam sheet data ditampilkan dan dapat
> diedit sekaligus di sheet input bagaimana? atau buat tabel bantu untuk
> sheet input dan display data dari sheet data dibawahnya atau gmn? data
> input maupun edit tidak ada tersimpan bila tidak mengklik tombol save.
> terima kasih semoga tidak mengganggu.
> best regads
>
>
>

Fri Dec 21, 2012 1:40 am (PST) . Posted by:

"agung.widodo01@id.panasonic.com" aghoenx1

Rekan pembelajar Excel sekalian,

Ada soal sederhana,
Bagaimana formula untuk mencari data di database dihalaman lain dan mengganti data Angka yang dihasilkan dengan Huruf tertentu

Contoh kasus saya ada dalam lampiran

Terimakasih
Agung W

Fri Dec 21, 2012 1:42 am (PST) . Posted by:

"Dian Anas" anassheva20

terima kasih atas pencerahannya, semoga tidak merepotkan.

--- On Fri, 12/21/12, Jan Raisin <miss.jan.raisin@gmail.com> wrote:

From: Jan Raisin <miss.jan.raisin@gmail.com>
Subject: Re: [belajar-excel] membuat duk pns otomatis
To: belajar-excel@yahoogroups.com
Date: Friday, December 21, 2012, 3:08 AM

Maaf, balasnya lama..
sebetulnya Jan inginnya mas Anas agak sedikit kreatif memberikan contoh model inputannya, tetapi yang dimunculkan modelnya sama. ini yang sempat bikin Jan hopeless, mungkin saja mas Anas yang terlalu sibuk jadi tidak sempat untuk berkrasi ria sehingga tidak sempat membuat apa yang Jan minta

Gini aja kali ya.. karena Jan lagi malas untuk bikin desain dan data dummy (niatnya sih mau dibikin data dummy aja) maka Jan akan menawarkan sebuah solusi yang sangat simpel dan mudah, tanpa perlu banyak coding script VBA, tanpa harus memikirkan desain untuk inputnya, pokoknya simple tetapi tidak murahan dan tampilannya juga lumayan oke dan tidak mengecewakan. 

Tapi ada syaratnya ya.. Yang ini wajib, kudu, harus, musti diikuti.. jika tidak maka gagal lah hasil Jan merenung di pojok kamar setiap malam sambil menunggu sang pangeran yang akan datang menyelamatkan Jan sambil menunggang kuda putih xixixi.. (Lebay Mode ON)
Hasil input harus disusun sebagai sebuah database yang baikDatabase mulai dari cell A1 dengan baris 1 adalah header datanya
Isi data dimulai dari baris 2Tidak ada merge cell baik di header maupun di dalam data
Tidak ada baris/ kolom kosong antar dataDatabase disusun dengan orientasi vertikal (dari atas ke bawah)
Tipe data setiap kolom harus seragam dan benarDatabase memiliki 1 buah kolom yang berfungsi sebagai Primary Key yang bersifat unik (tidak ada yang sama antar data, dalam kasus ini adalah NIP)
Sebaiknya database dibuat menjadi Tabel/List, pada excel 2007 ke atas dapat diakses melalui ribbon Home >> Styles >> Format as Table, pada versi 2003 ke bawah diakses melalui Data >> List >> Create List
langkah selanjutnya adalah mengaktifkan fitur Data Form-nya Excel, pada Excel 2007 ke atas diaktifkan dengan cara:Masuk ke menu Excel Option >> Quick Acces Toolbar >> pada kotak Choose command form, pilih Commands not in the ribbon >> klik Form >> klik Add >> klik OK. Untuk versi 2003 ke bawah Jan tidak mengetahui fitur ini diakses melalui apa.. semoga ada Be-Exceler lain yang masih memiliki versi 2003 bersedia untuk menjelaskannya.

Jika langkah di atas dilakukan dengan benar, maka seharusnya di pojok kiri atas akan muncul satu buah icon baru bernama Form.

Cara kerjanya gimana?untuk input data baru, klik icon Form sehingga muncul kotak seperti ini:

untuk melakukan input data baru, tarik scroll bar sampai ke paling bawah, sehingga Form akan terlihat kosong, setelah itu input semua data yang diinginkan, setelah selesai klik "NEW"

untuk Edit dan Deletenya gimana?
sebelum masuk ke tahap ini, ada kode yang harus ditulis dahulu di worksheet yang berisi database dengan event Before Double Click
cara memunculkannya, dari lembar kerja Excel, tekan tombol ALT F11 >> double klik nama sheetnya >> ganti General dengan Worksheet >> pilih BeforeDoubelClick
copas scriptnya berikut ke dalam VBE:Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    With Target        If .Count = 1 Then            If .Column = 2 And .Row > 2 Then
                Range("a1").Select                ActiveSheet.ShowDataForm
            End If        End If    End With
End Sub
untuk script di atas tidak Jan sertakan keterangannya, nanti kalo ingin mempelajari VBA lebih dalam tidak hanya mau terima jadi saja, Jan akan coba terangkan sejelas-jelasnya.

cara edit atau delete-nya adalah dengan cara melakukan double click pada nama yang ingin diedit atau didelete, jika hanya edit maka setelah melakukan Edit harus menekan tombol New, jika delete maka harus menekan tombol Delete setelah sebelumnya memilih data yang ingin dihapus.

kalo ingin mencari data tinggal klik Criteria, masukkan kriteria pencarian lalu tekan tombol Enter

Untuk pembuatan laporannya dapat menggunakan fitur Pivot table, ini adalah cara yang paling mudah karena hanya dibutuhkan melakukan drag & drop saja. (coba pelajari cara mnggunaan Pivot Table)

Gimana? simpel tetapi efektifkan.. seharusnya ini akan sangat mudah bagi newbie sekalipun
Sortnya datanya gimana? Manual dulu aja deh... nanti di sesi berikutnya insya ALLAH akan Jan ajari bagaimana cara sort data, yang paling mudah adalah dengan melakukan rekam macro. Atau mungkin ada Be-Exceler yang bersedia menambahkan script sortirnya.. sangat dipersilakan, karena punya ilmu gak boleh disimpan untuk diri sendiri.

Best Regard

-Ms. Jan Raisin-

Pada 17 Desember 2012 17:16, Dian Anas <anassheva20@yahoo.com> menulis:

 

terima kasih untuk penyelesaianya untuk duk, tapi saya masih ada permasalahan. jika data yang ada dalam sheet data ditampilkan dan dapat diedit sekaligus di sheet input bagaimana? atau buat tabel bantu untuk sheet input dan display data dari sheet data dibawahnya atau gmn? data input maupun edit tidak ada tersimpan bila tidak mengklik tombol save. terima kasih semoga tidak mengganggu.

best regads

Fri Dec 21, 2012 2:41 am (PST) . Posted by:

"ghozi alkatiri" ghozialkatiri

formula pertama sheet display D6

=IFERROR(INDEX(({" ";"A";"F";"K";"P";"U"});INDEX(Data!$D$2:$H$19;MATCH(Display!$C6;Data!$C$2:$C$19;0);MATCH(Display!D$5;Data!$D$1:$H$1;0))+1);"")

copy ke kanan dan bawah

wassalam

Ghozi Alkatiri

________________________________
Dari: "agung.widodo01@id.panasonic.com" <agung.widodo01@id.panasonic.com>
Kepada: belajar-excel@yahoogroups.com
Dikirim: Jumat, 21 Desember 2012 11:09
Judul: [belajar-excel] Mengubah angka hasil dari database menjadi huruf


 
Rekan
pembelajar Excel sekalian,
 
Adasoal sederhana,
Bagaimana
formula untuk mencari data di database dihalaman lain dan mengganti data Angka
yang dihasilkan dengan Huruf tertentu
 
Contoh
kasus saya ada dalam lampiran
 
Terimakasih
Agung W

Fri Dec 21, 2012 2:46 am (PST) . Posted by:

"ghozi alkatiri" ghozialkatiri

sorry attachment pertanyaan menggunakan excel 2003 formulanya dirubah menjadi:

=IF($C6="";"";INDEX(({" ";"A";"F";"K";"P";"U"});INDEX(Data!$D$2:$H$19;MATCH(Display!$C6;Data!$C$2:$C$19;0);MATCH(Display!D$5;Data!$D$1:$H$1;0))+1))

wasssalam

Ghozi Alkatiri

________________________________
Dari: "agung.widodo01@id.panasonic.com" <agung.widodo01@id.panasonic.com>
Kepada: belajar-excel@yahoogroups.com
Dikirim: Jumat, 21 Desember 2012 11:09
Judul: [belajar-excel] Mengubah angka hasil dari database menjadi huruf


 
Rekan
pembelajar Excel sekalian,
 
Adasoal sederhana,
Bagaimana
formula untuk mencari data di database dihalaman lain dan mengganti data Angka
yang dihasilkan dengan Huruf tertentu
 
Contoh
kasus saya ada dalam lampiran
 
Terimakasih
Agung W

Fri Dec 21, 2012 5:51 am (PST) . Posted by:

"Mr. Kid" nmkid.family@ymail.com

Coba :
=INDEX($F$16:$F$20,VLOOKUP($B6,Data!$B$2:$H$19,COLUMN(C$5),0)+1)
Bahasa manusia :
"Ambil dari $F$16:$F$20 [INDEX($F$16:$F$20] pada posisi baris hasil lookup
vertikal [VLookUp] nilai B6 di tabel B2:H19 di sheet data di kolom nilai
kolom C5 dengan mode pencarian sama persis"

Wassalam,
Kid.

2012/12/21 <agung.widodo01@id.panasonic.com>

> **
>
>
> Rekan pembelajar Excel sekalian,****
>
> ** **
>
> ****Ada**** soal sederhana, ****
>
> Bagaimana formula untuk mencari data di database dihalaman lain dan
> mengganti data Angka yang dihasilkan dengan Huruf tertentu****
>
> ** **
>
> Contoh kasus saya ada dalam lampiran****
>
> ** **
>
> Terimakasih****
>
> Agung W****
>
>
>

Fri Dec 21, 2012 1:11 am (PST) . Posted by:

"Teti Zhe" teti_zhe

Makasih Pak Hendrik..

 
Salam,
Teti.

________________________________
From: hendrik karnadi <hendrikkarnadi@yahoo.com>
To: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Sent: Wednesday, December 19, 2012 5:03 PM
Subject: Re: [belajar-excel] bagaimana cara agar excel tidak berat waktu dibuka?


 
Coba jalan-jalan ke sini
http://chandoo.org/wp/2012/03/20/optimize-speedup-excel-formulas/

Salam,
Hendrik Karnadi

________________________________
From: Teti Zhe <teti_zhe@yahoo.com>
To: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Sent: Wednesday, 19 December 2012, 15:53
Subject: [belajar-excel] bagaimana cara agar excel tidak berat waktu dibuka?


 

 Dear all,
Saya punya file workbook excel yang di dalamnya terdiri dari banyak sheet..
rumus perhitungan yang dipakai juga hanya sebatas pengurangan, penambahan dan, penjumlahan keseluruhan sel dalam masing2 sheet. tapi koq berat banget saat dibuka, membutuhkan waktu yang cukup lama untuk mengetik kemudian menyimpan, sering not responding gitu.. gimana dunk solusinya?? 
Mkasih..

Salam,
Teti.

Fri Dec 21, 2012 1:40 am (PST) . Posted by:

"Heru Safrudin" superheruu

Dear Exceller

Bagaimana formula untuk menjumlahkan kolom Qty di sheet Data sesuai TAHUN
expirednya ? (file terlampir)

--
Regards,

Heru Safrudin

Fri Dec 21, 2012 2:11 am (PST) . Posted by:

"hendrik karnadi" hendrikkarnadi

Silakan coba file terlampir dengan formula SUMIFS (Excel 2007 ke atas). Untuk Excel 2003 bisa pakai SUMPRODUCT

Salam,
Hendrik Karnadi

________________________________
From: Heru Safrudin <superheruu@gmail.com>
To: belajar-excel@yahoogroups.com
Sent: Friday, 21 December 2012, 15:39
Subject: [belajar-excel] Lagi-lagi tanya penjumlahan bersyarat, berdasarkan kriteria tertentu


 
Dear  Exceller
 
Bagaimana formula untuk menjumlahkan kolom Qty di sheet Data sesuai TAHUN expirednya ? (file terlampir)

--
Regards,

Heru Safrudin

Fri Dec 21, 2012 2:35 am (PST) . Posted by:

"Prasetya Adi Rahman"

Coba jawab ya, semoga membantu.

Maaf tidak bisa menjelaskan seperti Master Excel yang lain, maklum masih
cupu.

From: belajar-excel@yahoogroups.com
[mailto:belajar-excel@yahoogroups.com] On Behalf Of Heru Safrudin
Sent: 21 Desember 2012 15:40
To: belajar-excel@yahoogroups.com
Subject: [belajar-excel] Lagi-lagi tanya penjumlahan bersyarat,
berdasarkan kriteria tertentu

Dear Exceller

Bagaimana formula untuk menjumlahkan kolom Qty di sheet Data sesuai
TAHUN expirednya ? (file terlampir)

--
Regards,

Heru Safrudin

Fri Dec 21, 2012 6:27 am (PST) . Posted by:

"Mr. Kid" nmkid.family@ymail.com

Hai Pak Heru,

Ada banyak cara untuk mengkalkulasinya, antara lain :
1. Array formula Sum (semua versi Excel)
:: hati-hati jika datanya banyak atau ada kolom QTY berisi data bertipe
text [ops... tipe data lagi...] akan menghasilkan error
=SUM((Data!$A$2:$A$39=$A3)*(*YEAR(Data!$C$2:$C$39)*
=B$2)*Data!$B$2:$B$39)

2. Fungsi SumProduct (semua versi Excel)
:: hati-hati jika datanya banyak atau ada kolom QTY berisi data bertipe
text akan menghasilkan error
=SUMProduct((Data!$A$2:$A$39=$A3)*(*YEAR(Data!$C$2:$C$39)*=B$2)*
Data!$B$2:$B$39)
kecuali diubah menjadi :
=SUMProduct((Data!$A$2:$A$39=$A3)*(*YEAR(Data!$C$2:$C$39)*=B$2),
Data!$B$2:$B$39)

3. Fungsi SumIFs (Excel 2007 ke atas)
:: hati-hati dengan data kolom C di sheet Data jika tidak berisi data
tanggal bertipe datetime bisa menghasilkan kalkulasi yang salah
=SUMIFS( Data!$B$2:$B$39 , Data!$A$2:$A$39,$A3 , Data!$C$2:$C$39,*
">="&B$2&-1&-1* , Data!$C$2:$C$39,*"<="&B$2&-12&-31 * )
-> *biru *: tanggal awal
-> *merah *: tanggal akhir

4. Pivot table (semua versi Excel)
-> buat pivot table dengan data source merujuk ke sheet Data seluruh
tabel (include header)
-> pasang Product di sisi Row, Exp di sisi Column, dan QTY di sisi
Values
-> klik pivot table
-> klik kanan field bernama Exp dalam pivot table -> pilih Group ->
pilih Year dan pengelompokan lain yang dibutuhkan (misal Months, Days,
Quarter, dsb) -> OK
-> klik kanan setiap field yang tidak dibutuhkan (misal Months) ->
pilih remove

Wassalam,
Kid.

2012/12/21 Heru Safrudin <superheruu@gmail.com>

> **
>
>
> Dear Exceller
>
> Bagaimana formula untuk menjumlahkan kolom Qty di sheet Data sesuai TAHUN
> expirednya ? (file terlampir)
>
> --
> Regards,
>
> Heru Safrudin
>
>
>

Fri Dec 21, 2012 1:41 am (PST) . Posted by:

"Heru Safrudin" superheruu

Rasanya tak cukup hanya ucapan Terima kasih buat Pencerah Excel kita....
Semoga Allah SWT membalas dengan pahala yang setimpal

Pada 20 Desember 2012 21:33, Mr. Kid <mr.nmkid@gmail.com> menulis:

> **
>
>
> Alhamdulillah...
>
>
> *" ternyata sudah bisa jalan dan tak perlu pikir type data"*
> >> Oh ya ? *bekerja dengan database tidak perlu memikirkan tipe data ?*ciiyuuzz ?
> >> Bagaimana jika pada script :
>
> REF = .Cells(X, 1).Value
> RS.Open "select * from P1 Where P1.REF=*" & REF*, CON, adOpenKeyset,
> adLockOptimistic
> If RS.RecordCount = 0 Then
> RS.AddNew
> RS.Fields(0).Value = .Cells(X, 1).Value
> RS.Fields(1).Value = .Cells(X, 2).Value
> RS.Fields(2).Value = .Cells(X, 3).Value
> RS.Fields(3).Value = .Cells(X, 4).Value
> RS.Fields(4).Value = .Cells(X, 5).Value
> RS.Fields(5).Value = .Cells(X, 6).Value
> RS.Fields(6).Value = .Cells(X, 7).Value
> RS.Fields(7).Value = .Cells(X, 8).Value
> RS.Fields(8).Value = .Cells(X, 9).Value
> RS.Fields(9).Value = .Cells(X, 10).Value
> RS.Fields(10).Value = .Cells(X, 11).Value
> RS.Update
> End If
>
> bagian yang dilatar kuning Anda ganti dengan yang ada pada script yang
> Anda anggap bermasalah membuat muncul error yang berbunyi :
>
> RS.Open "select * from P1 WHERE P1.REF=*'" & REF & "'"*, CON,
> adOpenKeyset, adLockOptimistic
> Apakah tetap tidak memikirkan datatype dengan AddNew dan Update ?
>
> Jadi permasalah utama bukan masalah menggunakan AddNew atau Execute, tapi
> masalah utama adalah cara menyusun query yang ndak peduli dengan tipedata.
>
>
> *"Tapi kalau data mencapai 3000an record kok agak lama," *
> >> Bagaimana jika ditelaah berdasar apple to apple dari 2 prosedur
> tersebut, yaitu prosedur yang pakai con.execute dengan yang pakai addnew.
>
> Baris pakai con.execute berbunyi :
> CON.Execute sQuery
>
> itu sama dengan :
>
> RS.AddNew
> RS.Fields(0).Value = .Cells(X, 1).Value
> RS.Fields(1).Value = .Cells(X, 2).Value
> RS.Fields(2).Value = .Cells(X, 3).Value
> RS.Fields(3).Value = .Cells(X, 4).Value
> RS.Fields(4).Value = .Cells(X, 5).Value
> RS.Fields(5).Value = .Cells(X, 6).Value
> RS.Fields(6).Value = .Cells(X, 7).Value
> RS.Fields(7).Value = .Cells(X, 8).Value
> RS.Fields(8).Value = .Cells(X, 9).Value
> RS.Fields(9).Value = .Cells(X, 10).Value
> RS.Fields(10).Value = .Cells(X, 11).Value
> RS.Update
> Banyak mana prosesnya ?
>
> Lihat bagian yang *dibiru* *ditambah dengan penyusunan query oleh data
> provider* itu sama dengan prosedur dengan con.execute bagian :
> For Each TEKS1 In .Range(.Cells(X, 1).Address & ":" & .Cells(X,
> 11).Address)
>
> select case teks1.column
> case 4,5 'tipe datetime
> teks1="#" & format$(teks1,"YYYY-MM-DD") & "#"
> case 3,11 'tipe string
> teks1="'" & teks1 & "'"
> case else 'numerik'
> teks1=clng(0 & teks1)
> end select
> teks=teks & "," & teks1
> Next
> teks=mid$(teks,2)
> sQuery = "Insert Into P1 (
> REF,JOB,MACHINE,START,STOP,DOWNTIME,GLD,PK,QTY,KA,REMARK ) select " & TEKS
> RS.Open "select * from P1 Where P1.REF=*" & REF*, CON, adOpenKeyset,
> adLockOptimistic
> If RS.RecordCount = 0 Then
> CON.Execute sQuery
> End If
> *penyusunan query oleh data provider* dilakukan sangat cepat oleh data
> provider, lebih cepat dari baris :
> sQuery = "Insert Into P1 (
> REF,JOB,MACHINE,START,STOP,DOWNTIME,GLD,PK,QTY,KA,REMARK ) select " & TEKS
>
> *Tapi bagian :*
> RS.Fields(0).Value =
> RS.Fields(1).Value =
> RS.Fields(2).Value =
> RS.Fields(3).Value =
> RS.Fields(4).Value =
> RS.Fields(5).Value =
> RS.Fields(6).Value =
> RS.Fields(7).Value =
> RS.Fields(8).Value =
> RS.Fields(9).Value =
> RS.Fields(10).Value =
> diproses *jauh lebih lambat *dibanding :
> For Each TEKS1 In .Range(.Cells(X, 1).Address & ":" & .Cells(X,
> 11).Address)
>
> select case teks1.column
> case 4,5 'tipe datetime
> teks1="#" & format$(teks1,"YYYY-MM-DD") & "#"
> case 3,11 'tipe string
> teks1="'" & teks1 & "'"
> case else 'numerik'
> teks1=clng(0 & teks1)
> end select
> teks=teks & "," & teks1
> Next
> teks=mid$(teks,2)
>
> *Bagian :*
> rs.addnew
> dan
> rs.update
> diproses sangat-sangat jauh lebih lambat dibanding :
> CON.Execute
>
> *"apakah ada yg perlu diperbaiki "*
> >> ndak ada. memang demikianlah karakteristik operasi recordset per record
> berbasis field per field.
>
> Wassalam,
> Kid.
>
> 2012/12/20 Heru Safrudin <superheruu@gmail.com>
>
>> **
>>
>>
>> Dear Mr. Kid
>>
>> Alhamdulillah ternyata banyak jalan menuju keberhasilan setelah pake
>> cara yang dari Mr. Kid yang lain yaitu RS.AddNew, ternyata sudah bisa
>> jalan dan tak perlu pikir type data, bahkan tidak perlu validasi. Tapi
>> kalau data mencapai 3000an record kok agak lama, apakah ada yg perlu
>> diperbaiki dari prosedur di bawah ini :
>>
>> ConnectDB
>> With Sheets("P1")
>> For X = 2 To 10 ' .Range("A1").CurrentRegion.Rows.Count
>> REF = .Cells(X, 1).Value
>> RS.Open "select * from P1 Where P1.REF=" & REF, CON,
>> adOpenKeyset, adLockOptimistic
>> If RS.RecordCount = 0 Then
>> RS.AddNew
>> RS.Fields(0).Value = .Cells(X, 1).Value
>> RS.Fields(1).Value = .Cells(X, 2).Value
>> RS.Fields(2).Value = .Cells(X, 3).Value
>> RS.Fields(3).Value = .Cells(X, 4).Value
>> RS.Fields(4).Value = .Cells(X, 5).Value
>> RS.Fields(5).Value = .Cells(X, 6).Value
>> RS.Fields(6).Value = .Cells(X, 7).Value
>> RS.Fields(7).Value = .Cells(X, 8).Value
>> RS.Fields(8).Value = .Cells(X, 9).Value
>> RS.Fields(9).Value = .Cells(X, 10).Value
>> RS.Fields(10).Value = .Cells(X, 11).Value
>> RS.Update
>> End If
>> RS.Close
>> Next
>> End With
>> DisconnectDB
>>
>> Thanks so much Mr. ...........
>>
>> Pada tanggal 20/12/12, Heru Safrudin <superheruu@gmail.com> menulis:
>>
>> > Ya kalau begitu saya sok tahu banget setidaknya tentang type data,
>> karena
>> > udah merasa type data di REF dan lainnya udah sama, tapi kalau ternyata
>> > belum sama ya mesti tanya ke siapa lagi ya.... atau Mr. punya referensi
>> > bacaan ttg data type ? Makasih banyak
>> >
>> > 1534,200001,'A1',#2012-01-02#,#2012-01-02#,0,150,792,19858,30,''
>> > nyerah deh kayaknya
>> >
>> >
>> >
>> > Pada 20 Desember 2012 08:50, Mr. Kid <mr.nmkid@gmail.com> menulis:
>> >
>> >> **
>>
>> >>
>> >>
>> >> Tuh kan...
>> >>
>> >> Kalau begitu, coba pahami tentang tipe data (data type) lagi. Mulai
>> dari
>> >> apa itu datatype, guna, cara pilih, batasan tipe data, hubungan antar
>> >> data
>> >> type, akibat perbedaan data type, data type dalam db (mis access aja
>> >> dulu).
>> >>
>> >> Setelah itu baru tentang penyusunan query dan dampak perbedaan data
>> type
>> >> dalam query.
>> >>
>> >> Inti permasalahan masih tentang data type.
>> >>
>> >> Coba cari tahi, di db kolom ref datatype nya apa. Kalau sudah dapat,
>> cek
>> >> di query nya si data type itu dikenai proses terhadap data type apa.
>> Ubah
>> >> agar sama datatypenya mengikuti yang di db.
>> >>
>> >> Kalau belum bersedia mendalami datatype, maka cenderung muncul error
>> >> query
>> >> akibat datatype.
>> >>
>> >> Wassalam,
>> >> Kid.
>> >> On Dec 20, 2012 8:40 AM, "Heru Safrudin" <superheruu@gmail.com> wrote:
>> >>
>> >>> **
>>
>> >>>
>> >>>
>> >>> Capture Error type mismatch.JPG
>> >>>
>> >>>
>> >>> Pada 19 Desember 2012 18:59, Mr. Kid <mr.nmkid@gmail.com> menulis:
>> >>>
>> >>>> **
>>
>> >>>>
>> >>>>
>> >>>> waduh masih error ya...
>> >>>> masih belum sempet buka file nih...
>> >>>>
>> >>>> kira-kira yang bikin error bagian mana ?
>> >>>> Jangan-jangan yang baris RS.open blablabla
>> >>>>
>> >>>>
>> >>>> Kid.
>> >>>>
>> >>>> 2012/12/19 Heru Safrudin <superheruu@gmail.com>
>> >>>>
>> >>>>> **
>>
>> >>>>>
>> >>>>>
>> >>>>> Dear Mr.Kid
>> >>>>>
>> >>>>> Karena putus asa itu dosa, terpaksa saya kuatkan hati dan beranikan
>> >>>>> diri untuk terus bertanya.
>> >>>>> Instruksi Mr. sudah saya laksanakan tapi belum berjalan seperti yg
>> >>>>> diharapkan
>> >>>>> Apalagi yang masih salah ? file terlampir
>> >>>>>
>> >>>>> Semoga Allah SWT memberi petunjuk dan pertolongan pada orang yg
>> >>>>> memberi
>> >>>>> pertolongan
>> >>>>> وَاÙ„سÙ'َÙ„َاÙ…ُ عَÙ„َيÙ'كُÙ…Ù' وَرَحÙ'مَةُ اÙ„لهِ وَبَرَكَاتُهُ
>> >>>>>
>> >>>>>
>> >>>>> Pada 19 Desember 2012 12:35, Mr. Kid <mr.nmkid@gmail.com> menulis:
>> >>>>>
>> >>>>> **
>>
>> >>>>>>
>> >>>>>>
>> >>>>>> Maaf belum sempat lihat langsung dalam file.
>> >>>>>>
>> >>>>>> Pokok permasalahannya adalah bagaimana cara Anda menyusun query.
>> >>>>>> Setiap field yang nilai blank di worksheet :
>> >>>>>> 1. harus jadi 0 ketika dimasukkan ke field db bertipe numerik
>> >>>>>> 2. boleh tetap nullstring '' jika field db bertipe text (string)
>> >>>>>>
>> >>>>>> Coba pada blok kondisi dalam for each teks1 blabla
>> >>>>>> diubah jadi :
>> >>>>>> select case teks1.column
>> >>>>>> case 4,5 'tipe datetime
>> >>>>>> teks1="#" & format$(teks1,"YYYY-MM-DD") & "#"
>> >>>>>> case 3,11 'tipe string
>> >>>>>> teks1="'" & teks1 & "'"
>> >>>>>> case else 'numerik'
>> >>>>>> teks1=clng(0 & teks1)
>> >>>>>> end select
>> >>>>>> teks=teks & "," & teks1
>> >>>>>>
>> >>>>>> kemudian bagian replace teks yag tadinya berbunyi :
>> >>>>>> teks=replace( blabla )
>> >>>>>> diganti menjadi :
>> >>>>>> teks=mid$(teks,2)
>> >>>>>>
>> >>>>>> Wassalam,
>> >>>>>> Kid.
>> >>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>
>> >>>
>> >>>
>> >>> --
>> >>> Regards,
>> >>>
>> >>> Heru Safrudin
>> >>>
>> >>>
>> >>>
>> >>
>> >
>> >
>> >
>> > --
>> > Regards,
>> >
>> > Heru Safrudin
>> >
>>
>> --
>> Regards,
>>
>> Heru Safrudin
>>
>>
>
>

--
Regards,

Heru Safrudin

Fri Dec 21, 2012 1:42 am (PST) . Posted by:

"Andre Rahmaidy Teeza" andre_teeza_bn

Sore Beexeller

ada yang mau saya tanyakan tentang macro vba untuk link data antar sheet..
misalkan di sheet data punya uraian, sandi dan kode cabang yang harus di isi sesuai dengan data di sheet 2 
yang saya tanyakan apakah bisa menggunakan vba untuk melakukan link data secara otomatis berdasarkan sandi dan kode cabang (KC_1 & KC_2). (data terlampir)
Mohon petunjuknya ya beexeller.
terima kasih sebelumnya

Best Regards

Andree
GROUP FOOTER MESSAGE
---------------------------------------------------------------------
bergabung ke milis (subscribe), kirim mail kosong ke:
belajar-excel-subscribe@yahoogroups.com

posting ke milis, kirimkan ke:
belajar-excel@yahoogroups.com

berkunjung ke web milis
http://tech.groups.yahoo.com/group/belajar-excel/messages

melihat file archive / mendownload lampiran
http://www.mail-archive.com/belajar-excel@yahoogroups.com/
atau (sejak 25-Apr-2011) bisa juga di :
http://milis-belajar-excel.1048464.n5.nabble.com/

menghubungi moderators & owners: belajar-excel-owner@yahoogroups.com

keluar dari membership milis (UnSubscribe):
kirim mail kosong ke  belajar-excel-unsubscribe@yahoogroups.com
---------------------------------------------------------------------

Tidak ada komentar:

Posting Komentar