Kamis, 08 November 2012

[belajar-excel] Digest Number 1891

Milis Belajar Microsoft Excel

2 New Messages

Digest #1891
1a
Re: Belajar Loop by "Mr. Kid" nmkid.family@ymail.com
2a
Re: membuat macros append untuk beberapa file xls by "hendrik karnadi" hendrikkarnadi

Messages

Thu Nov 8, 2012 5:55 am (PST) . Posted by:

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

Pak Lukman,

Kalau ndak salah tangkep maksudnya adalah ada data yang key-nya tidak
ditulis disemua baris, tetapi hanya di baris-baris pertama kali si key
muncul. Jadi baris berikutnya, yang key-nya sama dengan record sebelumnya
akan berupa cell kosong.

Coba pelajari proses manualnya dulu. Setelah bisa memahami alur manualnya,
baru coba ulangi proses manual itu dengan disertai record macro. Kalau
sudah dapat record macronya nanti, baru mulai pasang deklarasi variabel
untuk range datanya dan sebagainya. Hasil akhirnya akan didapat proses utuh
untuk hal tersebut.

Coba proses manual ini.
Asumsi, kolom kosong mulai ada di kolom AB.
1. klik cell AB2 dan pasang formula :
=AB1

2. klik AB2 yang berisi formula itu, lalu copy (tekan CTRL C)

3. ke tabel data, blok header beserta datanya hanya pada kolom-kolom key
(atau kolom-kolom yang memiliki blank cell yang akan diisi).
Misal header dan data tersebut adalah di A1 sampai D12345 yang merupakan
kolom-kolom key ada blank cell yang mau disi. Kolom setelah D (mulai E
sampai Z) adalah kolom yang sudah terisi penuh atau bukan key.
maka blok A1:D12345

4. tekan CTRL G -> tekan tombol Special -> pilih blankcells -> tekan OK
>> bagian ini adalah goto -> special -> blank cells

5. sudah dapat cell blank ter-select oleh proses nomor 4, maka paste (tekan
CTRL V)

6. Lanjutkan dengan paste values
>> Blok seluruh kolom A sampai D -> tekan CTRL C -> klik kanan yang terblok
-> pilih Paste Special -> pilih Values -> tekan OK

7. selesai.

Maka seluruh kolom key sudah terisi penuh, dan proses loop bisa dipanggil
untuk memproses data yang sudah penuh terisi tersebut.

Wassalam,
Kid.

2012/11/8 lkm jktind <lkmjktind@gmail.com>

> **
>
>
> Pak Kid.
>
> Terima kasih .
>
> Sudah dapat saya selesaikan sesuai dengan kebutuhan saya.
> Mohon do koreksi.
> Hanya masih belum tau cara mendapatkan . bila salah input kode transaksi
> dengan salah input no Acc yg nga ada
>
>
> adapun untuk mempelajari macro untuk excel . buku apakah yg di sarankan ?
> Visual basic , visual basic 6, visual basic for aplication apakah
> semua ini bisa di gunakan untuk macro excel ?
>
> Salam
>
> Lukman
>
>
>
> 2012/11/3 Mr. Kid <mr.nmkid@gmail.com>
>
>> **
>>
>>
>> Bagaimana ya cara menjelaskannya...
>>
>> Mungkin lihat file terlampir saja ya...
>>
>> Tapi, cuplikannya seperti ini :
>>
>> Tanya Set rngRef =
>> Sheet5.Range("a1").CurrentRegion --- kenapa sheet
>> 5 ? (bukankah sheet database adanya di sheet 2) Tanya Set rngLibur
>> = Sheet5.Range("n1").CurrentRegion.Resize(, 1) -- kenapa di sheet 5
>> ? cell N1 --- daftar hari libur. Jawab Sheet5 (bukan sheet 5)
>> adalah nama object class dari worksheet. Lihat di VBE frame VBA Project
>> (Project Explorer) Jawab
>> Tanya If LenB(.Value) <> 0
>> Then --- kok bisa di namai
>> B lenB Jawab LenB( bla ) dan bukan Len B atau LenB. Jawab LenB
>> adalah sebuah fungsi untuk menghitung jumlah karakter suatu nilai data
>> bertipe string (teks) dalam satuan byte. Jawab Yang umum dikenal adalah
>> fungsi Len, yang menghitung jumlah karakter suatu nilai data. Jadi, hasil
>> LenB akan diubah oleh VB engine menjadi hasil Len. Jawab Fungsi selalu
>> diikuti buka kurung. Coba lihat semua fungsi dalam worksheet yang dipakai
>> di formula, seperti : Jawab =VLookUp( bla , bla, bla,bla ) atau
>> =Sum( bla:bla ) Jawab Selalu diikuti buka kurung bukan ? Jawab
>> Tanya .Offset(0, -1).Value = UCase$(.Offset(0, -1).Value) ---
>> huruf $ ini mewakili apa dan apa gunanya ? Jawab UCase$ adalah nama
>> fungsi. Sedangkan .Offset(0, -1).Value adalah nilai inputan ke parameter
>> yang diminta si fungsi Jawab Coba perhatikan ketika membuat formula di
>> worksheet, seperti =VLookUp( , maka user harus mengisi suatu nilai yang
>> diminta oleh VLookUp bukan ? Jawab Itu namanya nilai untuk inputan bagi
>> input parameter fungsi. Jawab Fungsi UCase$ adalah fungsi untuk
>> mengubah seluruh karakter menjadi huruf kapital (seperti UCase), tetapi
>> input parameternya adalah string (teks) Jawab Jadi, pada fungsi UCase,
>> input parameter adalah bertipe variant. Jawab Coba perhatikan di VBE
>> ketika menulis : Jawab UCase$( akan muncul tooltip berbunyi Ucase$(
>> String as string ) as string Jawab ketika menulis : Jawab UCase( akan
>> muncul tooltip berbunyi Ucase( String ) as string Jawab Karena tidak
>> ada definisi jelas seperti yang diberi warna merah, maka tipe data pada
>> Ucase adalah Variant. Jawab Tipe data variant memakan ruang memori
>> lebih banyak, sehingga relatif lebih lambat diproses. Jawab
>> Tanya Dim rngDT As Range, rngLoopDT As Range --
>> dengan memakai as range -- mungkin arti nya bila data bertambah akan di
>> loop mengikuti jumlah rows yg ada ? Jawab Tidak. Jawab Tidak ada
>> hubungannya penggunaan tipe data range dengan bertambah atau berkurangnya
>> data dimanapun berada. Jawab Dipilih menggunakan tipe data range,
>> karena akan memproses memanfaatkan bendanya. Excel adalah kumpulan range,
>> bukan kumpulan nomor baris dan nomor kolom. Jawab Untuk membuat
>> variabel bertipe range dapat menyesuaikan dengan jumlah record yang ada,
>> Jawab dibutuhkan perintah yang detil dalam menentukan area range yang
>> harus disimpan dalam variabel bertipe range itu. Jawab Artinya,
>> variabel selalu bersifat pasif karena memang tugasnya hanya menyimpan
>> sesuatu yang diamanahkan kepadanya untuk disimpan Jawab
>> Tanya Dim rngDT As Range, rngLoopDT As Range --
>> dengan memakai as range -- mungkin arti nya bila data bertambah akan di
>> loop mengikuti jumlah rows yg ada ? Tanya -- beda nya rngDT dengan
>> rngLoopDT ? mungkin kah artinya : rngDT --- data yg ada akan di
>> loop sebanyak rngLoopDT ? Jawab rngDT :: rencananya sih (jadi ini
>> alasan pribadi, dan bukan aturan baku) akan digunakan untuk menyimpan data
>> disuatu range yang ada di sheet inputan Jawab rngLoopDT :: untuk
>> menyimpan data di rngDT yang sedang diproses saat loop dengan for each nanti
>> Jawab Jadi, rngDT bukan berarti data yang akan di loop sebanyak rngLoopDT
>> Jawab tapi rngLoopDT adalah wadah untuk menyimpan range dari rngDT yang
>> sedang diproses ketika melakukan loop dengan For Each Jawab
>> Tanya Dim dblRefFee As
>> Double -- Pakai
>> double dan Long beda nya dimana ? Jawab Coba pelajari (lihat di Help
>> atau browsing internet dengan key Data Type) tentang tipe data. Jawab Tipe
>> data skalar jenis Double dapat menyimpan bilangan pecahan pada interval
>> nilai tertentu. Jawab Tipe data skalar jenis Long dapat menyimpan
>> bilangan bulat pada interval nilai tertentu. Jawab Pertanyaannya, kapan
>> suatu bilangan Anda sebut bilangan pecahan ? Dan kapan akan Anda sebut
>> bahwa suatu bilangan itu bilangan bulat ? Jawab Setelah dapat kepastian
>> nilai datanya bertipe numerik sebagai bilangan bulat atau pecahan, maka
>> bisa ditentukan apakah akan menggunakan Double atau Long. Jawab
>> Permintaan Kalau nga keberatan . mohon di tampilkan no row nya di work
>> sheet - agar lebih mudah saya mempelajari nya . Permintaan Karena saya
>> mau tambahkan dengan nilai beli , jual dan total transaksi per konfirmasi.
>> Jawab Keberatan sih nggak… Jawab Bukannya malah akan lebih bermanfaat
>> ketika Anda bisa melakukannya sendiri ? Jawab Dengan memahami nomor row
>> apa yang dikehendaki, maka bisa diketahui nomor row itu adalah nomor row di
>> data yang mana. Jawab Dengan tahu data yang mana yang akan diambil
>> row-nya, maka dapat diketahui baris-baris script yang mana yang memproses
>> data tersebut Jawab Dengan diketahui bari-baris script yang memproses
>> data tersebut, bisa diketahui apakah nilai (bisa bertipe apa saja) yang
>> diproses atau benda yang diproses Jawab Dengan diketahui apa yang
>> diproses, maka akan ada ide untuk mendapatkan nilai row yang diharapkan
>> Jawab Kemudian ditulis bagaimana cara mendapatkan nilai row itu Jawab Ketika
>> sudah didapat, maka akan ada proses pengambilan keputusan untuk menyimpan
>> dimana dalam bentuk apa Jawab Apakah langsung sebagai nilai rownya yang
>> ditulis dalam sebuah cell, atau akan disimpan disebuah variabel lebih dulu
>> Jawab Ketika akan menulis di cell tertentu, cell yang manakah ?
>> Bagaimana cara sampai ke cell tersebut dari cell-cell data inputan yang
>> sedang diproses ? Jawab Kemudian ditulis deh script hasil karya
>> pemikiran tersebut. Jawab Hal ini memang panjang, butuh kesabaran
>> (pintu pertama ilmu pengetahuan), dan penuh kesulitan (tidak ada perwujudan
>> kebaikan akan melalui jalan yang mudah) Jawab tapi hasilnya adalah
>> suatu pemberian (kata orang adalah anugerah) yang sulit diambil oleh pihak
>> lain Jawab Bagaimana ? Mau mencoba sampai puyeng dulu ? Jawab Alasan
>> sudah dekat deadline adalah alasan klise. Jadi, kalau alasannya sudah dekat
>> deadline, pakai formula dulu saja… wakakakka… Jawab
>> Wassalam,
>> Kid.
>>
>>
>>
>>
>> 2012/11/3 lkm jktind <lkmjktind@gmail.com>
>>
>>> **
>>>
>>>
>>> Pak Kid
>>> Tanya :
>>>
>>> Set rngRef = Sheet5.Range("a1").CurrentRegion
>>> --- kenapa sheet 5 ? (bukankah sheet database adanya di sheet 2)
>>> Set rngLibur = Sheet5.Range("n1").CurrentRegion.Resize(, 1) --
>>> kenapa di sheet 5 ? cell N1 --- daftar hari libur.
>>>
>>>
>>> For Each rngLoopDT In rngDT.Resize(, 1).Offset(1, 4)
>>> With rngLoopDT
>>> If LenB(.Value) <> 0
>>> Then --- kok bisa di namai
>>> B len*B*
>>>
>>> .Offset(0, -1).Value = UCase$(.Offset(0, -1).Value) ---
>>> huruf $ ini mewakili apa dan apa gunanya ?
>>>
>>> Dim rngDT As Range, rngLoopDT As Range --
>>> dengan memakai as range -- mungkin arti nya bila data bertambah akan di
>>> loop mengikuti jumlah rows yg ada ?
>>>
>>> -- beda nya rngDT dengan rngLoopDT
>>>
>>>
>>> mungkin kah artinya : rngDT --- data yg ada akan di
>>> loop sebanyak rngLoopDT ?
>>> Dim dblRefFee As
>>> Double -- Pakai
>>> double dan Long beda nya dimana ?
>>>
>>> sekian dulu pertanyan dari saya .
>>>
>>> Mohon di koreksi .
>>>
>>> Kalau nga keberatan . mohon di tampilkan no row nya di work sheet - agar
>>> lebih mudah saya mempelajari nya .
>>>
>>> Karena saya mau tambahkan dengan nilai beli , jual dan total transaksi
>>> per konfirmasi.
>>>
>>>
>>>
>>> Terima kasih.
>>>
>>>
>>> Salam
>>>
>>> Lukman
>>>
>>>
>>
>
>

Thu Nov 8, 2012 7:03 am (PST) . Posted by:

"hendrik karnadi" hendrikkarnadi

Macro dalam file terlampir mudah2an sdh dapat memenuhi keinginan anda.
Ikuti langkah 1,2,3 nya.

Selamat mencoba.

Salam,
Hendrik Karnadi

________________________________
From: hendrik karnadi <hendrikkarnadi@yahoo.com>
To: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Sent: Thursday, 8 November 2012, 10:01
Subject: Re: [belajar-excel] membuat macros append untuk beberapa file xls


Mohon bersabar Pak, butuh waktu untuk loopingnya. Kebetulan ilmu permacroan saya masih agak terbatas.
Sesuai saran Mod, coba pelajari dulu cara membuat daftar filenya (tentunya tidak ingin diketik bukan ?)
Dari daftar file tsb kita harus membuat loopingnya, agar data dari setiap file yang ada (kecuali file proses) dicopas ke sheet Total dalam file Process.

Salam,
Hendrik Karnadi

________________________________
From: Agus Erwanto <erwanto_agus@yahoo.co.id>
To: belajar-excel@yahoogroups.com
Sent: Wednesday, 7 November 2012, 18:50
Subject: Re: [belajar-excel] membuat macros append untuk beberapa file xls


 
Terimakasih Pak Hendrik,
tool sudah bisa dijalankan,
tetapi masalahnya disini saya punya banyak file yang harus digabungkan bahkan sampai ratusan, bagaimana ya? karena tidak mungkin menulis satu persatu nama file.

--- Mods ---
Sepertinya ini re-post dalam rentang waktu yang kurang lama. Mohon repost berikutnya agak diperpanjang interval antara posting dan repost-nya.

Untuk mendaftar nama file, coba login dengan yahoo ID Anda dan jalan-jalan kemilis ke bagian files seperti link berikut :
http://tech.groups.yahoo.com/group/belajar-excel/files/Contoh%20Excel%20dari%20Mod/

Disana ada beberapa file contoh untuk membuat daftar nama-nama file.
Silakan diunduh, dipelajari, diterapkan ke kasus yang dihadapi.
Jika mengalami masalah, utarakab ke milis beserta usaha penerapannya.
------------

--- Pada Sel, 6/11/12, hendrik karnadi <hendrikkarnadi@yahoo.com> menulis:

Dari: hendrik karnadi <hendrikkarnadi@yahoo.com>
Judul: Re: [belajar-excel] membuat macros append untuk beberapa file xls
Kepada: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Tanggal: Selasa, 6 November, 2012, 5:06 PM

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