Situasi yg saya hadapi.   adalah tidak semua LK mengunakan th fiscal yg
berlaku di negri kita. dan mengunakan IDR.
seperti dibawah ini :

contoh :
31 des 2011 ---   2011 Q4   : fiscal  Indonesia. akhir fiscalnya des.
 (periode
berikutnya sudah berganti)
31 Mar 2012 --   2012 Q2  :  fiscal  berbeda --- disini tercantum
pendapatan  selama 6 bulan   yg seharusnya 3 bulan saja.   akhir fiscalnya
maret.
publikasinya yg berurutan .   (Q4 -- di artikan pendapatan selama 12
bulan,  Q2 - di artikan pendapatan selama 6 bulan   : row 2 pakai Q    row
4 pakai bulan )

aa2=      aa3.01 aa3.02 aa3=
yg pakai sama dengan -- acc inti .
yg pakai titik - sub acc.

yg di input hanya acc dengan huruf awal a.
yg bisa juga saya anggap sebagai row bantu  ( dari pakai sheet bantu)

kedepan :  acc dengan huruf awal B  --- adalah data yg dibutuh  sebagai
data feed  untuk file comparasi.
disini  semua data sudah mengunakan satu mata uang dengan kelipatan 3
bulanan.

adapun perkali di yg mengandung unsur harga  (acc AT100)  sebenarnya nga
terlalu penting  (ada delay )
acc  memakai  karakter C.

saat input --  dan sudah selasai ---  di ambil aktif cell    sebenarnya
aktif  Row()   di kurangi 300  atau yg dicari  aa1=  (ini pasti  ada )
minus  2 .
sebagai awal Loop . dan berhentif bila aktif ticker sudah berganti .

Bila semua perhitungan tampa mengunakan Index/match dan sumif  --- mungkin
membutuhkan  puluhan dimensi.
perkiraan waktunya   mungkin nga sampai 15 detik .

file saat ini masih belum ada sumif  untuk menjumlahkan sub acc ---  belum
saya buat.

Terima kasih Pak Kid atas segala petunjuk saran dan lain nya .


Salam

Lukman












2015-06-15 19:09 GMT+07:00 'Mr. Kid' mr.nm...@gmail.com [belajar-excel] <
belajar-excel@yahoogroups.com>:

>
>
> hehehe...
>
> Sama-sama Pak...
>
> Selamat mencoba media input datanya.
> Tapi semua acc berawalan a yang dibutuhkan komputasi acc dengan if yang
> banyak dan index match tersebut pasti tersedia kan ya...
> Kalau pakai Match (worksheet function match di VBA misalnya), kan bisa
> menghasilkan error jika tidak ketemu datanya.
>
> Mungkin ada baiknya mencoba sudut pandang pengolahan data selain
> menggunakan active cell ataupun baca cell per cell.
> Bisa jadi dengan mengurutkan ticker lalu mencari baris pertama ticker x
> dan baris terakhir ticker x akan bisa lebih cepat daripada membaca satu per
> satu.
>
> Hal ini juga bisa diterapkan pada script yang tempo lalu (andai akan
> diperbaiki). Dengan begitu, kerjanya akan per ticker. Begitu ketemu ticker
> baru, langsung dikerjakan semua tanpa harus cek per baris acc nya apa lalu
> dikerjakan. Maksudnya, begitu ketemu ticker baru, langsung kerjakan semua
> acc yang perlu dihitung. Jadi ndak perlu menunggu tahu bahwa saat ini sudah
> sampai baris berapa dengan acc apa.
>
> Begitu juga dengan pencarian kolom quarter nya ada dimana, yang
> menggunakan match pada sisi kolom index dalam script vba.
> Logikanya, pastilah datanya telah berurutan quarternya. Kalau sekarang q3,
> pasti kanannya q2, kanannya lagi q1, dst. Ataukah mungkin ada data yang
> kolom ke-5 adalah q3, tapi kolom ke-6 nya q1 alias q2 nya tidak ada ?
> Jika sudah diperiksa dan pasti q nya berurutan, maka data q memiliki pola
> yang tetap dengan siklus yang lebih pendek (hanya 1 sampai 4 dibanding
> bulan yang 1 sampai 12, tapi tidak mudah untuk week ya). Artinya, lokasi q
> sebelum atau q yang sama di tahun beda, atau malah q1 nya di tahun yang
> sama atau tahun yang beda sekalipun akan membentuk sebuah pola yang
> sederhana dan tetap.
>
> Kalau ndak salah duga, andai script Anda tempo lalu diubah pola prosesnya,
> maka per ticker per (mungkin) 20 tahun q (80 q), akan menjadi cepat
> dikerjakan dengan konsep bekerja per blok ticker dan memanfaatkan pola q.
> Apalagi jika menjauhi penggunaan nilai data acc dan nilai data q.
> Maksudnya, menghindari ketergantungan berulang-ulang untuk memeriksa apa
> bunyi acc nya dan apa bunyi q nya. Jadi, berbasis posisi baris (untuk acc)
> dan posisi kolom (untuk q) saja. Sepertinya, dengan cara ini, data ribuan
> ticker gak akan sampai 10 menit untuk 80-an q deh... tapi ini cuma feeling
> ajah loh ya...
>
> Moga-moga ndak bingung... dan terus mencoba... ;)
>
> Wassalam,
> Kid
>
>
>
>
>
> 2015-06-15 13:53 GMT+10:00 lkm jktind lkmjkt...@gmail.com [belajar-excel]
> <belajar-excel@yahoogroups.com>:
>
>>
>>
>> Acc dengan karakter pertama  a   adalah sumber data dari LK . yg jumlah
>> row nya tidak sama . sesuai dengan kebutuhan.
>>
>> selama ini dalam meng input data  sekitar 5 ~ 10 menit . per ticker per
>> quater. ini pun terbantu  dengan beberapa macam VBA .
>>
>> lagi terpikirkan .  untuk di buatkan 1 macam VBA saja .  mengacu pada
>> cell aktif ---  untuk di ambil ticker  nya ---
>>
>>
>> Terima kasih Pak Kid.
>>
>>
>> Salam
>>
>>
>> Lukman
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> 2015-06-13 22:23 GMT+07:00 'Mr. Kid' mr.nm...@gmail.com [belajar-excel] <
>> belajar-excel@yahoogroups.com>:
>>
>>>
>>>
>>> hmmm...
>>>
>>> Jadi untuk memakai select case :  tinggal saya ganti saja . dari  IF /
>>>> ElseIF --- dengan case.
>>>
>>> > Kira-kiranya demikian, tapi kalau dilihat alur prosesnya, pengubahan
>>> dari IF menjadi select case pada alur proses yang Anda buat tidak akan ada
>>> pengaruhnya terhadap kecepatan proses. Mungkin kalau adapun tidak akan
>>> signifikan.
>>> > tapi, moga-moga dugaan saya tersebut keliru ya... (supaya manteb
>>> nyobanya... dengan mencoba, kemungkinan besar akan dapat banyak hal baru).
>>>
>>>
>>> adapun data yg saya gunakankan  dari  range A1: paling akhir.  dan
>>>> semuanya mengunakan formula index--
>>>> biar seandai nya bila ada penambahan row atau colum  nga akan merubah
>>>> formulanya.   dan lebih mudah bikin VBA nya  ( lebih mudah di perbaikinya/
>>>> seragam)
>>>
>>> > hehehehe... pilihan yang bagus... targetnya adalah seluwes mungkin
>>> terhadap perubahan
>>> > kalau ndak kliru duga, kolom A sampai L relatif tetap atau setidaknya
>>> bisa dijaga agar tetap. Alasannya adalah isi kolom-kolom tersebut cenderung
>>> sebagai informasi kunci untuk proses. Terutama kolom A dan C.
>>> > Begitu juga dengan baris 1 sampai 4, walau yang dibutuhkan cenderung
>>> pada baris 1 dan 2 (kayanya loh ya)
>>> > Andai mau mencoba, fungsi vLookUp dengan kolom pertama area lookup
>>> adalah kolom D (yang ada gabungan ticker dengan account), maka bisa
>>> dihitung nomor kolomnya untuk sampai setiap Q yang dibutuhkan (berdasar Q
>>> di baris 1 atau Q di baris tertentu milik masing-masing ticker [kalo ndak
>>> kliru yang kode account aa0 atau aa1 gitu]). Cukup menambahkan suatu nilai
>>> konstan antara kolom bernomor 1 di baris 2 dengan jumlah kolom sampai ke
>>> kolom D nya
>>>
>>> saat ini pun masih mengunakan template : tapi hanya per ticker saja.
>>>> (seandainya copy paste perticker 1 detik  hasilnya masih lebih cepat pakai
>>>> VBA
>>>> kalau hanya di hitung per column quater saat ini saja . sekitar 1
>>>> menit  )
>>>> jumlah ticker  ini selalu bertambah.
>>>
>>> > hmmm... tampaknya memang bisa jadi menggunakan VBA lebih cepat
>>> dibanding dengan formula.
>>> > untuk proses copas-nya bisa dengan VBA kan ya...
>>> > bagaimana jika template-nya per ticker tapi seluruh periode (periode
>>> triwulanan kan ya) ? Dengan asumsi bahwa setiap ticker (berapapun records
>>> yang disediakan oleh si ticker) dibuatkan template yang jumlah record per
>>> ticker selalu tetap (misal 46 record [jumlah semua account -> katanya :
>>> 'semuanya ada 46 macam formula'] lalu VBA mengganti-ganti kode ticker nya,
>>> sehingga formula langsung ambil data sesuai ticker dan kolom quarter-an
>>> langsung hitung. Selesai hitung, copas values ke sheet output yang juga
>>> pasti tetap jumlah record per ticker nya.
>>>
>>> btw,
>>> Kalau dilihat sekilas dari rumusan di kolom i dan juga implementasi
>>> rumusan tersebut dalam script, masih ada potensi yang besar untuk
>>> mempercepat prosesnya. Bisa jadi langkahnya akan diawali dengan menyusun
>>> ulang (dengan bahasa manusia) alur komputasi setiap item account.
>>>
>>> Misalnya, komputasi pertama adalah menetapkan nomor kolom untuk
>>> mendapatkan data setiap q yang dibutuhkan (qtk,qtkq,qtky,qtka -> sepertinya
>>> justru variabel ini yang pokok). Penetapan nilai ini dilakukan setiap kali
>>> ticker berganti (berbeda dengan ticker sebelumnya). Begitu juga dengan
>>> komputasi nilai kurs. Jadi, proses ini tidak dilakukan setiap kali baris
>>> yang diproses berganti (setiap perubahan nilai rc dalam loop per barisnya.
>>>
>>> Tampaknya lagi, ketika kode ticker berganti, andai dilakukan sekalian
>>> komputasi seluruh item account yang dibutuhkan juga akan mempersingkat
>>> waktu proses.
>>> hehehe...
>>> kalau 'hanya di hitung per column quater saat ini saja . sekitar 1
>>> menit', bisa jadi nanti bisa turun menjadi sekitar 40 detik atau kurang
>>> kali ya... moga-moga sih begitu...
>>>
>>> ;)
>>>
>>> Wassalam,
>>> Kid
>>>
>>>
>>>
>>>
>>>
>>> 2015-06-13 13:27 GMT+10:00 lkm jktind lkmjkt...@gmail.com
>>> [belajar-excel] <belajar-excel@yahoogroups.com>:
>>>
>>>>
>>>>
>>>> Terima kasih Pak Kid.
>>>>
>>>> Jadi untuk memakai select case :  tinggal saya ganti saja . dari  IF /
>>>> ElseIF --- dengan case.
>>>>
>>>> adapun data yg saya gunakankan  dari  range A1: paling akhir.  dan
>>>> semuanya mengunakan formula index--
>>>> biar seandai nya bila ada penambahan row atau colum  nga akan merubah
>>>> formulanya.   dan lebih mudah bikin VBA nya  ( lebih mudah di perbaikinya/
>>>> seragam)
>>>>
>>>>
>>>> saat ini pun masih mengunakan template : tapi hanya per ticker saja.
>>>> (seandainya copy paste perticker 1 detik  hasilnya masih lebih cepat pakai
>>>> VBA
>>>> kalau hanya di hitung per column quater saat ini saja . sekitar 1
>>>> menit  )
>>>> jumlah ticker  ini selalu bertambah.
>>>>
>>>> sumber data  jarang di rubah  (kecuali ada revisi)
>>>>
>>>>
>>>> Salam
>>>>
>>>>
>>>> Lukman.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> 2015-06-12 8:43 GMT+07:00 'Mr. Kid' mr.nm...@gmail.com [belajar-excel]
>>>> <belajar-excel@yahoogroups.com>:
>>>>
>>>>>
>>>>>
>>>>> hmmm...
>>>>>
>>>>> 0. Panjang juga bunyi formula untuk 1 item kode kolom C yang berisi
>>>>> CC301.
>>>>>
>>>>> 1. Kalau melihat text file berisi script yang Anda buat, tampaknya
>>>>> seluruh kolom dikomputasi ulang.
>>>>> > Apakah sumber datanya berubah setiap waktu, sehingga seluruh kolom
>>>>> harus dikomputasi ulang?
>>>>> > Apakah tidak memungkinkan dibuatkan satu template untuk
>>>>> mengkomputasi 1 kolom data quarter (triwulan) terbaru saja, yang hasil
>>>>> komputasi template ini lalu di-copy ke sheet series quarter-an tersebut ?
>>>>>
>>>>> 2. Jika dilihat dari rumusan komputasi di kolom i, ada nilai-nilai
>>>>> kode kolom C yang sudah menjadi bawaan sumber data (kolom i tidak berisi
>>>>> misalnya [bisa jadi ada kriteria lain, but it's ok]) dan ada nilai-nilai
>>>>> kode kolom C yang harus dikomputasi.
>>>>> > Berarti, ada kemungkinan bahwa isi kolom C akan selalu tetap atau
>>>>> setidaknya di-set selalu tetap, walau sumber datanya hanya menyediakan
>>>>> baris-baris nilai yang tidak butuh hitungan saja. Iya gak ?
>>>>>
>>>>> 3. kembali ke contoh formula nomor 0, yang berbunyi :
>>>>> *CC301*  :
>>>>> =IF($C51="CC301";IF(AND(ISNUMBER(INDEX($M$1:$AX$48000;MATCH($A51&"be1=";$D$1:$D$48000;0);R$2));INDEX($M$1:$AX$48000;MATCH($A51&"be1=";$D$1:$D$48000;0);R$2)<>0);
>>>>> IF(RIGHT(R$1;2)="Q1";INDEX($M$1:$AX$48000;MATCH($A51&"be1=";$D$1:$D$48000;0);R$2);
>>>>> IF(OR(RIGHT(R$1;2)="Q2";RIGHT(R$1;2)="Q3";RIGHT(R$1;2)="Q4");IF(AND(INDEX($M$1:$AX$48000;MATCH($A51&"be1=";$D$1:$D$48000;0);R$2+1)<>0;ISNUMBER(INDEX($M$1:$AX$48000;MATCH($A51&"be1=";$D$1:$D$48000;0);R$2+1)));INDEX($M$1:$AX$48000;MATCH($A51&"be1=";$D$1:$D$48000;0);R$2)-INDEX($M$1:$AX$48000;MATCH($A51&"be1=";$D$1:$D$48000;0);R$2+1);"")));"");"SalahJalur")
>>>>>
>>>>> > Bisa jadi dengan mengubahnya agar menggunakan vLookUp akan menjadi
>>>>> lebih singkat, contohnya :
>>>>> =IF($C51="CC301";IFERROR(IF(RIGHT(M$1)-1;IF(N(VLOOKUP($A51&"be1=";$D$1:$AX$48000;M$2+9;0))*N(VLOOKUP($A51&"be1=";$D$1:$AX$48000;M$2+10;0));VLOOKUP($A51&"be1=";$D$1:$AX$48000;M$2+9;0)-VLOOKUP($A51&"be1=";$D$1:$AX$48000;M$2+10;0);"");IF(
>>>>> N(VLOOKUP($A51&"be1=";$D$1:$AX$48000;M$2+9;0));VLOOKUP($A51&"be1=";$D$1:$AX$48000;M$2+9;0);""));"");"SalahJalur")
>>>>>
>>>>>     [bisa jadi formula lain juga masih ada yang bisa disederhanakan]
>>>>>
>>>>> > Dengan mencoba formulasi di atas yang diterapkan dalam bentuk VBA,
>>>>> bisa jadi akan cukup mempersingkat proses
>>>>>
>>>>> 4. tentang 'kecuali untuk LK  th fiscal yg berbeda', jika dikaitkan
>>>>> dengan beberapa baris kode terkait yang ada dalam text file berisi script
>>>>> Anda
>>>>> > Formulasi seperti CC301 di atas yang tadinya berdasar bunyi periode
>>>>> Q di baris 1 [seperti RIGHT(M$1], akan menjadi dipengaruhi bunyi periode Q
>>>>> di baris yang kolom C nya berisi kode berbunyi 'aa0'
>>>>> > Berarti, andaikan ada emiten (kolom A) yang tidak menyediakan data
>>>>> kolom C bernilai 'aa0' akan menggunakan bunyi Q di baris 1. Hal ini
>>>>> mengindikasikan bahwa komputasi CC301 dan sebangsanya yang lain, yang
>>>>> dipengaruhi oleh bunyi Q di 'aa0' akan memiliki nilai qtr,qtQ, qtY, dsb
>>>>> yang berasal dari baris 'aa0'.
>>>>> > Bisa jadi, formula di nomor 3 (termasuk yang di-VBA-ken) cukup
>>>>> disesuaikan untuk bagian cek bunyi Q oleh Right(M1 menjadi
>>>>>     =Right( if( kalau ada aa0 di emiten tersebut, ambil bunyi q nya ,
>>>>> M1 )
>>>>>     ***ambil dari kanan dari suatu teks di :
>>>>>            yang kalau ada kode aa0 di emiten itu, ambil dari baris itu
>>>>> di kolom yang sama  (misal di m40)
>>>>>           ,kalau tidak ada kode aa0 di emiten itu, ambil dari baris 1
>>>>> di kolom yang sama (m1)
>>>>>
>>>>> 5. beberapa pengkondisi script yang ada, sebaiknya diperbaiki lagi.
>>>>> Contoh :
>>>>>     ada blok pengkondisian IF yang berbunyi :
>>>>>        If Len(qtk) = 0 Then
>>>>>                 'blablablabla banyak sekali barisnya
>>>>>        elseif len(qtk)>0 then
>>>>>                 'blublublublu yang juga banyak sekali barisnya, dan
>>>>> ada yang berupa beda penggunaan qtk atau qtka qtkq dsb
>>>>>        endif
>>>>>
>>>>> >   bisa diubah menjadi seperti :
>>>>>        if len(qtk)<>0 then
>>>>>                 'blublublublu yang juga banyak sekali barisnya, dan
>>>>> ada yang berupa beda penggunaan qtk atau qtka qtkq dsb
>>>>>        else
>>>>>                 'blablablabla banyak sekali barisnya
>>>>>        end
>>>>> > blok ini menghemat 1 proses perbandingan, yaitu tidak perlu cek
>>>>> Len(qtk) = 0
>>>>> > proses perbandingan dengan operator <> lebih cepat dibanding
>>>>> operator =
>>>>>
>>>>> 6. Script menunjukkan bahwa proses komputasi selalu dimulai dari kode
>>>>> 'aa0' sampai yang terbawah. Artinya, data memang memiliki urutan kode 
>>>>> 'aa0'
>>>>> dst yang tetap.
>>>>> > Berarti, Select Case bisa digunakan
>>>>> > Misal :
>>>>>     select case acc
>>>>>     case "aa0"
>>>>>          script kerjaannya
>>>>>     case "ba2=","ba3=","ba6=","be1=","be3=","be5=","bg5="
>>>>>          'proses universal untuk kode-kode acc diatas
>>>>>                         Cells(rc, cc).Value = .Index(Dtlk, .Match(Tic
>>>>> & "a" & mid(acc,2) , Vlk, False), cc) * Kurs
>>>>>     case dst
>>>>>
>>>>>     end select
>>>>>
>>>>>
>>>>> btw,
>>>>> Andai yang diproses bisa 1 kolom per datangnya data baru di quarter
>>>>> baru yang masuk ke sheet input, maka dengan template berupa 1 sheet
>>>>> terpisah lalu hasilnya disalin ke sheet output yang berisi series yang
>>>>> pakai script Anda tersebut, maka seluruh proses bisa jadi lebih cepat.
>>>>>
>>>>> Apalagi kalau mau mulai mengerjakan dengan konsep cara kerja database
>>>>> mengolah data. Excel dengan fitur Get External Data dan susunan tabel yang
>>>>> baik dalam sheet Excel, bisa melakukan hal itu, meskipun ndak punya MS
>>>>> Access, MS SQL Server, Oracle, MySQL dsb sekalipun. Mestinya, dengan fitur
>>>>> get external data, untuk record yang masih sekitar 5 jutaan sih masih bisa
>>>>> sekitar beberapa menit malah bisa beberapa detik saja.
>>>>>
>>>>> Moga-moga ada manfaatnya...
>>>>>
>>>>> Wassalam,
>>>>> Kid
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> 2015-06-11 17:55 GMT+10:00 lkm jktind lkmjkt...@gmail.com
>>>>> [belajar-excel] <belajar-excel@yahoogroups.com>:
>>>>>
>>>>>>
>>>>>>
>>>>>> ini kalau pakai formula biasa :
>>>>>>
>>>>>> *CC301*  :
>>>>>> =IF($C51="CC301";IF(AND(ISNUMBER(INDEX($M$1:$AX$48000;MATCH($A51&"be1=";$D$1:$D$48000;0);R$2));INDEX($M$1:$AX$48000;MATCH($A51&"be1=";$D$1:$D$48000;0);R$2)<>0);
>>>>>> IF(RIGHT(R$1;2)="Q1";INDEX($M$1:$AX$48000;MATCH($A51&"be1=";$D$1:$D$48000;0);R$2);
>>>>>> IF(OR(RIGHT(R$1;2)="Q2";RIGHT(R$1;2)="Q3";RIGHT(R$1;2)="Q4");IF(AND(INDEX($M$1:$AX$48000;MATCH($A51&"be1=";$D$1:$D$48000;0);R$2+1)<>0;ISNUMBER(INDEX($M$1:$AX$48000;MATCH($A51&"be1=";$D$1:$D$48000;0);R$2+1)));INDEX($M$1:$AX$48000;MATCH($A51&"be1=";$D$1:$D$48000;0);R$2)-INDEX($M$1:$AX$48000;MATCH($A51&"be1=";$D$1:$D$48000;0);R$2+1);"")));"");"SalahJalur")
>>>>>>
>>>>>>
>>>>>> CC301 = menghitung pendapatan hanya 3 bulan saja .
>>>>>> CC302. CC303, CC304 -- rumus nya mirip -- yg dihitung ,  laba kotor ,
>>>>>> laba usaha,  laba bersih  hanya 3 bulan saja.
>>>>>>
>>>>>> *CC302*  =
>>>>>> =IF($C52="CC302";IF(AND(ISNUMBER(INDEX($M$1:$AX$48000;MATCH($A52&"be3=";$D$1:$D$48000;0);R$2));INDEX($M$1:$AX$48000;MATCH($A52&"be3=";$D$1:$D$48000;0);R$2)<>0);IF(RIGHT(R$1;2)="Q1";INDEX($M$1:$AX$48000;MATCH($A52&"be3=";$D$1:$D$48000;0);R$2);IF(OR(RIGHT(R$1;2)="Q2";RIGHT(R$1;2)="Q3";RIGHT(R$1;2)="Q4");IF(AND(INDEX($M$1:$AX$48000;MATCH($A52&"be3=";$D$1:$D$48000;0);R$2+1)<>0;ISNUMBER(INDEX($M$1:$AX$48000;MATCH($A52&"be3=";$D$1:$D$48000;0);R$2+1)));INDEX($M$1:$AX$48000;MATCH($A52&"be3=";$D$1:$D$48000;0);R$2)-INDEX($M$1:$AX$48000;MATCH($A52&"be3=";$D$1:$D$48000;0);R$2+1);"")));"");"SalahJalur")
>>>>>>
>>>>>>
>>>>>> *CC220*  = =IF($C50="CC220";IF(
>>>>>> AND(ISNUMBER(INDEX($M$1:$AX$48000;MATCH($A50&"bg5=";$D$1:$D$48000;0);R$2));ISNUMBER(INDEX($M$1:$AX$48000;MATCH($A50&"bg5=";$D$1:$D$48000;0);R$2+4));ISNUMBER(INDEX($M$1:$AX$48000;MATCH($A50&"bg5=";$D$1:$D$48000;0);MATCH((LEFT(R$1;4)-1)&"
>>>>>> Q4";$M$1:$AX$1;0))));IF(AND(INDEX($M$1:$AX$48000;MATCH($A50&"bg5=";$D$1:$D$48000;0);R$2)<>0;INDEX($M$1:$AX$48000;MATCH($A50&"bg5=";$D$1:$D$48000;0);R$2+4)<>0;INDEX($M$1:$AX$48000;MATCH($A50&"bg5=";$D$1:$D$48000;0);MATCH((LEFT(R$1;4)-1)&"
>>>>>> Q4";$M$1:$AX$1;0))<>0);INDEX($M$1:$AX$48000;MATCH($A50&"bg5=";$D$1:$D$48000;0);R$2)-INDEX($M$1:$AX$48000;MATCH($A50&"bg5=";$D$1:$D$48000;0);R$2+4)+INDEX($M$1:$AX$48000;MATCH($A50&"bg5=";$D$1:$D$48000;0);MATCH((LEFT(R$1;4)-1)&"
>>>>>> Q4";$M$1:$AX$1;0));"");"");"Salah Jalur")
>>>>>>
>>>>>>
>>>>>> diatas  3 macam  dari  semuanya ada 46 macam formula -- dan bisa di
>>>>>> pakai untuk  semua column atau row .
>>>>>>
>>>>>>
>>>>>> kecuali untuk LK  th fiscal yg berbeda  -
>>>>>>
>>>>>>
>>>>>>
>>>>>> Salam
>>>>>>
>>>>>> Lukman
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> 2015-06-11 14:30 GMT+07:00 lkm jktind <lkmjkt...@gmail.com>:
>>>>>>
>>>>>>> contoh :  I56  :  be1= - be1=-1Q  berapa pendapatan dalam 3 bulan .
>>>>>>>
>>>>>>> Q56 =   Q51  Karena  kolom Q   adalah Q1
>>>>>>> R56 =   Q51 - S51    : kolom R adalah Q4      untuk mendapatkan
>>>>>>> data dari Okt ~ des
>>>>>>> S56 =   S51 - T51     : Kolom S adalah Q3     untuk mendapatkan
>>>>>>> data dari Jul ~ sep
>>>>>>> T56 =   T51 - U51     : Kolom T adalah Q2      untuk mendapatkan
>>>>>>> data dari april ~ jun
>>>>>>>
>>>>>>> Q51 = adalah pendapat dari jan ~ maret 2015
>>>>>>> R51 = adalah pendapatan dari jan ~ des 2014
>>>>>>> S51 = adalah pendapatan dari jan ~ sep 2014
>>>>>>> T51 = adalah pendapatan dari jan ~ juni 2014
>>>>>>>
>>>>>>>
>>>>>>> Salam
>>>>>>>
>>>>>>> Lukman
>>>>>>>
>>>>>>>
>>>>>>> 2015-06-11 13:43 GMT+07:00 'Mr. Kid' mr.nm...@gmail.com
>>>>>>> [belajar-excel] <belajar-excel@yahoogroups.com>:
>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Jadi, untuk semua rumusan di kolom i, pasti mengambil nilai (yang
>>>>>>>> ditambah kurang bagi dsb) hanya dari 1 kolom saja ?
>>>>>>>> Kalau sedang menghitung q1 tahun 2000 (yang ditambah kurang bagi
>>>>>>>> dsb), apakah hanya pakai data q1 tahun 2000 saja ?
>>>>>>>> Bagaimana dengan menghitung q2,q3,q4 ?
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> 2015-06-11 16:37 GMT+10:00 lkm jktind lkmjkt...@gmail.com
>>>>>>>> [belajar-excel] <belajar-excel@yahoogroups.com>:
>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Jadi kalau ada kolom i yang tidak berisi rumus (alias blank), maka
>>>>>>>>> nilainya tetap apa adanya dari sumber data ?
>>>>>>>>> : Ya
>>>>>>>>> kecuali data dalam USD -- akan di konversikan dalam IDR.
>>>>>>>>>
>>>>>>>>> Apakah semua rumus di kolom i itu pasti mengambil dari kolom yang
>>>>>>>>> sama ?   kebanyakan mengunakan column yg sama
>>>>>>>>>
>>>>>>>>> bila masih mengunakan formula di dalam excel :
>>>>>>>>> baris untuk bantu untuk vertical :   columns  E,F,G,H      (match
>>>>>>>>> vertical)
>>>>>>>>> baris untuk bantu untuk horizontal  :  Row 2.
>>>>>>>>> (match horizontal)
>>>>>>>>>
>>>>>>>>> jadi  : =  Index (data,  match vertical,  match horizontal)
>>>>>>>>>
>>>>>>>>> sedangkan untuk tahun fiscal yg berbeda   di hitung secara manual .
>>>>>>>>>
>>>>>>>>> Kolom I  : ini hanya catatan  rumus nya saja . berisi No Acc yg
>>>>>>>>> akan digunakan untuk menghitung .  (dari pada saya catat di file yg 
>>>>>>>>> berbeda)
>>>>>>>>> sebagai dan dasar pembuatan formula
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Salam
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Lukman
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 2015-06-11 12:10 GMT+07:00 'Mr. Kid' mr.nm...@gmail.com
>>>>>>>>> [belajar-excel] <belajar-excel@yahoogroups.com>:
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Jadi kalau ada kolom i yang tidak berisi rumus (alias blank),
>>>>>>>>>> maka nilainya tetap apa adanya dari sumber data ?
>>>>>>>>>> Apakah semua rumus di kolom i itu pasti mengambil dari kolom yang
>>>>>>>>>> sama ?
>>>>>>>>>> Maksudnya, ketika rumusan kolom i akan diimplementasi di kolom q1
>>>>>>>>>> tahun x, maka akan menggunakan semua nilai di kolom tersebut juga 
>>>>>>>>>> berdasar
>>>>>>>>>> kode-kode dalam rumusan kolom i ?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> 2015-06-11 14:46 GMT+10:00 lkm jktind lkmjkt...@gmail.com
>>>>>>>>>> [belajar-excel] <belajar-excel@yahoogroups.com>:
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Pak Kid.
>>>>>>>>>>>
>>>>>>>>>>> Data nya : ada yg mengunakan USD dan IDR
>>>>>>>>>>> sedangkan Harga  sahamnya mengunakan IDR
>>>>>>>>>>> Tahun fiscalnya ada ada yg berbeda:
>>>>>>>>>>> Kebanyakan  : dari jan ~ des ,    atau   dari  april 2014 ~
>>>>>>>>>>> maret  2015 (jepang)
>>>>>>>>>>>
>>>>>>>>>>> No Acc ---- di kolom C
>>>>>>>>>>> Ticker   --- di kolom A
>>>>>>>>>>>
>>>>>>>>>>> Data awal nya .  dari   aa0  sampai  AT100     jumlah row nya
>>>>>>>>>>> bisa tidak sama.  disini ada formula  yg di letakan di dalam excel.
>>>>>>>>>>>
>>>>>>>>>>> Data Inti nya      dari   ba2=  sampai  bg5=    disini . semua
>>>>>>>>>>> data di  seragamkan  dengan mata uang rupiah.
>>>>>>>>>>> qtr, qtrQ, qtrY, qtrA     ---  tahun fiscalnya dari jan ~ des
>>>>>>>>>>> row 1.
>>>>>>>>>>> qtk, qtrkQ, qttkY, qtkA ---  tahun fiscalnya berbeda.
>>>>>>>>>>>
>>>>>>>>>>> qtr, qtk --  quater saat ini.
>>>>>>>>>>> qtrQ , qtkQ  ---- quater sebelumnya .  digunakan untuk mencari
>>>>>>>>>>> hasil 3 bulan terakhir   ---- Q to Q.
>>>>>>>>>>> qtrY , qtkY ----  setahun yg lalu .       digunakan untuk
>>>>>>>>>>> menghitung Y to Y
>>>>>>>>>>> qtrA, qtkA   ---- untuk mencari  hasil 12 bulan terakhir.
>>>>>>>>>>> contoh :  =  2014 Q2 + 2013 Q4 - 2013 Q2
>>>>>>>>>>>
>>>>>>>>>>> sebuah template formula  :
>>>>>>>>>>> sebenarnya ada sheet  tambahan .  dinamai  sheet rumus . .
>>>>>>>>>>>
>>>>>>>>>>> Sub copy_formula()
>>>>>>>>>>>     Application.Calculation = xlCalculationAutomatic
>>>>>>>>>>>     Sheets("rumus").Range("R38:R83").Copy
>>>>>>>>>>>
>>>>>>>>>>>     Selection.PasteSpecial Paste:=xlPasteFormulas,
>>>>>>>>>>> Operation:=xlNone, _
>>>>>>>>>>>         SkipBlanks:=False, Transpose:=False
>>>>>>>>>>>
>>>>>>>>>>>     Selection.Copy
>>>>>>>>>>>     Selection.PasteSpecial Paste:=xlPasteValues,
>>>>>>>>>>> Operation:=xlNone, SkipBlanks _
>>>>>>>>>>>         :=False, Transpose:=False
>>>>>>>>>>>     Application.CutCopyMode = False
>>>>>>>>>>>     With Selection.Interior
>>>>>>>>>>>         .Pattern = xlNone
>>>>>>>>>>>         .TintAndShade = 0
>>>>>>>>>>>         .PatternTintAndShade = 0
>>>>>>>>>>>     End With
>>>>>>>>>>>     Selection.Replace What:="False", Replacement:="",
>>>>>>>>>>> LookAt:=xlPart, _
>>>>>>>>>>>         SearchOrder:=xlByRows, MatchCase:=False,
>>>>>>>>>>> SearchFormat:=False, _
>>>>>>>>>>>         ReplaceFormat:=False
>>>>>>>>>>>     Selection.Replace What:="", Replacement:="", LookAt:=xlPart,
>>>>>>>>>>> _
>>>>>>>>>>>         SearchOrder:=xlByRows, MatchCase:=False,
>>>>>>>>>>> SearchFormat:=False, _
>>>>>>>>>>>         ReplaceFormat:=False
>>>>>>>>>>>     Selection.Replace What:="#VALUE!", Replacement:="",
>>>>>>>>>>> LookAt:=xlPart, _
>>>>>>>>>>>         SearchOrder:=xlByRows, MatchCase:=False,
>>>>>>>>>>> SearchFormat:=False, _
>>>>>>>>>>>         ReplaceFormat:=False
>>>>>>>>>>>     Selection.Replace What:="", Replacement:="", LookAt:=xlPart,
>>>>>>>>>>> SearchOrder _
>>>>>>>>>>>         :=xlByRows, MatchCase:=False, SearchFormat:=False,
>>>>>>>>>>> ReplaceFormat:=False
>>>>>>>>>>>
>>>>>>>>>>>     Application.Calculation = xlCalculationManual
>>>>>>>>>>>
>>>>>>>>>>> End Sub
>>>>>>>>>>>
>>>>>>>>>>> di kolom I  ada rumus nya
>>>>>>>>>>>
>>>>>>>>>>> total row  sekitar  47.800  baris  dengan columns 30
>>>>>>>>>>>
>>>>>>>>>>> kalau di hitung dengan VBA  komplit_1   waktunya  sekitar 22 ~
>>>>>>>>>>> 23 menit.
>>>>>>>>>>> VBA Komplit_2   sekitar  15 ~ 16 menit.
>>>>>>>>>>>
>>>>>>>>>>> Salam
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Lukman
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> 2015-06-11 10:06 GMT+07:00 'Mr. Kid' mr.nm...@gmail.com
>>>>>>>>>>> [belajar-excel] <belajar-excel@yahoogroups.com>:
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Hai Lukman,
>>>>>>>>>>>>
>>>>>>>>>>>> Data awalnya seperti apa dan hasilnya seperti apa ya ?
>>>>>>>>>>>> Tampaknya tidak semua record adalah hitungan. Record hasil
>>>>>>>>>>>> hitungan pun sebenarnya akan selalu tetap per kode di kolom C, 
>>>>>>>>>>>> walau
>>>>>>>>>>>> hitungannya membutuhkan kode kolom C lainnya.
>>>>>>>>>>>>
>>>>>>>>>>>> Bolehkah dijabarkan kapan menggunakan :
>>>>>>>>>>>> qtr,qtrq,qtrY,qtrA ?
>>>>>>>>>>>>
>>>>>>>>>>>>> Dim qtr As String, qtrQ As String, qtrY As String, qtrA As
>>>>>>>>>>>>> String
>>>>>>>>>>>>> Dim qtk As String, qtkQ As String, qtkY As String, qtkA As
>>>>>>>>>>>>> String
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Sepertinya sebuah template formula yang diletakkan pada sebuah
>>>>>>>>>>>> kolom bisa mempercepat proses daripada menghitung setiap cells 
>>>>>>>>>>>> dengan loop
>>>>>>>>>>>> terhadap M baris x N kolom.
>>>>>>>>>>>>
>>>>>>>>>>>> Wassalam,
>>>>>>>>>>>> Kid.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> 2015-06-08 12:00 GMT+10:00 lkm jktind lkmjkt...@gmail.com
>>>>>>>>>>>> [belajar-excel] <belajar-excel@yahoogroups.com>:
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> lebih sering -- hanya di hitung 1 column saja .
>>>>>>>>>>>>>
>>>>>>>>>>>>> contoh file terlampir :
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Salam
>>>>>>>>>>>>>
>>>>>>>>>>>>> Lukman
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> 2015-06-07 18:58 GMT+07:00 Toby kenzo tobyke...@yahoo.co.id
>>>>>>>>>>>>> [belajar-excel] <belajar-excel@yahoogroups.com>:
>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Dear Lukman,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Menurut saya masih bisa di simplfy programnya dgn tidak
>>>>>>>>>>>>>> terlalu banyak menggunakan "kondisi".
>>>>>>>>>>>>>> Jika memungkinkan,anda bisa menggunakan formula excel dalam
>>>>>>>>>>>>>> suatu sheet untuk melakukan kalkulasi,jadi tidak semua fungsi 
>>>>>>>>>>>>>> kalkulasi di
>>>>>>>>>>>>>> lakukan di dalam vba,sebisa mungkin tugas vba hanya memanggil 
>>>>>>>>>>>>>> resultnya
>>>>>>>>>>>>>> saja, itu akan lebih cepat.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> TerimaKasih.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Sent from Yahoo Mail on Android
>>>>>>>>>>>>>> <http://overview.mail.yahoo.com/mobile/?.src=Android>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>  ------------------------------
>>>>>>>>>>>>>> * From: * lkm jktind lkmjkt...@gmail.com [belajar-excel] <
>>>>>>>>>>>>>> belajar-excel@yahoogroups.com>;
>>>>>>>>>>>>>> * To: * belajar-excel@yahoogroups com <
>>>>>>>>>>>>>> belajar-excel@yahoogroups.com>;
>>>>>>>>>>>>>> * Subject: * [belajar-excel] Do Case atau select Case [2
>>>>>>>>>>>>>> Attachments]
>>>>>>>>>>>>>> * Sent: * Sun, Jun 7, 2015 6:15:17 AM
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Saya telah membuat VBA  (seperti terlampir di email ini.)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Tapi rasanya lambat dalam memproses data.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> bila mengunakan do case atau select case  apakah akan lebih
>>>>>>>>>>>>>> cepat ?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> bagaimana cara merubahnya . bila hendak mengunakan do case.
>>>>>>>>>>>>>> /select case.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Salam
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Lukman
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> NB :
>>>>>>>>>>>>>> 1. Komplit_1  -- ini lambat
>>>>>>>>>>>>>> 2. Komplit_2  -- ini lebih cepat daripada yang diatas.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>  
>

Kirim email ke