Jumat, 23 November 2012

[belajar-excel] Digest Number 1926

15 New Messages

Digest #1926
1a
Re: APA YANG SALAH??? (fungsi IF) by "Gilang Sedar" gilangsedar9662
1b
Re: APA YANG SALAH??? (fungsi IF) by "Mr. Kid" nmkid.family@ymail.com
3a
Re: Part II Excel ke Text File : FixedLength by "Mr. Kid" nmkid.family@ymail.com
4a
Re: Merekap Pesan Error by "Mr. Kid" nmkid.family@ymail.com
4b
Re: Merekap Pesan Error by "Mr. Kid" nmkid.family@ymail.com
4c
Menghitung Bonus/insentif customer by "jonson dahrino" jonson_ringo
5
Menulis formula di makro by "Emi" emilestariklcc
6
Menempatkan Data Pada Kolom Secara Otomatis by "Prodev SIMPLE PB" prodev_simple

Messages

Thu Nov 22, 2012 10:10 pm (PST) . Posted by:

"Gilang Sedar" gilangsedar9662

Ngapunten Mas Kid,

Saya ikutan nimbrung karena penasaran nyobain rumus njenengan

Kok setelah saya coba eh keluar error,

Ternyata keliru nya ada disini

=IF(AND(C3=0,D3=0,E3=0,F3=0)*(CountIF(A3,"*X*")+(B3<>K3)),"BelumBayar",IF(
CountIF(A3,"*X*","PenggantiTolakan",IF((B3=0)*CountIF(C3:F3,-K3),"PelunasanN
otaPutih",IF((B3=K3)*(CountIF(C3:F3,-B3)+CountIF(C3:F3,-(H3+B3))),"Pembayara
nInvoice",""))))

Yang digaris bawahi, karena itu fungsi
IF(Logical_test,[Value_if_true],[value_if_false])

IF(CountIF(A3,"*X*","PenggantiTolakan",

Logical test nya (CountIF(A3,"*X*"

Value if true nya "PenggantiTolakan"

Dan value if false nya ke formula berikut nya.

Karena kurung pada logical test nya lupa di tutup, maka ada "bocor" disitu.
Solusinya tambahin kurung tutup

Dan formula menjadi berikut :

=IF(AND(C3=0,D3=0,E3=0,F3=0)*(COUNTIF(A3,"*X*")+(B3<>K3)),"BelumBayar",IF(
COUNTIF(A3,"*X*"),"PenggantiTolakan",IF((B3=0)*COUNTIF(C3:F3,-K3),"Pelunasan
NotaPutih",IF((B3=K3)*(COUNTIF(C3:F3,-B3)+COUNTIF(C3:F3,-(H3+B3))),"Pembayar
anInvoice",""))))

Mohon maaf kalo penjelasan saya mbuleti

-Gilang Sedar-

From: belajar-excel@yahoogroups.com [mailto:belajar-excel@yahoogroups.com]
On Behalf Of Mr. Kid
Sent: Friday, November 23, 2012 11:29 AM
To: belajar-excel@yahoogroups.com
Subject: Re: [belajar-excel] APA YANG SALAH??? (fungsi IF)

Sedikit menyimpulkan dari kiriman Pak Bagus (yang sampai melebihi batas
250KB ~masuk moderated deh~)
sekalian dongeng jumat pagi kali ya... :)

Dari formula Pak Abdul yang berbunyi :
=IF( AND( C3=0,D3=0,E3=0,F3=0
,ISNUMBER( SEARCH("X",A3) )
)
,"BelumBayar"
,IF( ISNUMBER( SEARCH("X",A3) )
,"PenggantiTolakan"
,IF( AND(B3-K3<>0,C3=0,D3=0,E3=0,F3=0)
,"BelumBayar"
,IF( AND(B3=0
,OR(C3+K3=0,D3+K3=0,E3+K3=0,F3+K3=0)
)
,"PelunasanNotaPutih"
,IF( OR( AND(B3=K3,B3+C3=0)
,AND(B3=K3,B3+D3=0)
,AND(B3=K3,B3+E3=0)
,AND(B3=K3,B3+F3=0)
)
,"PembayaranInvoice"
,IF( AND(B3=K3
,OR(C3+H3+A3=0,D3+H3+A3=0,E3+H3+A3=0,F3+H3+A3=0)
)
,"PembayaranInvoice"
,""
)
)
)
)
)
)
rujukan ke A3 yang bertipe string-lah yang menimbulkan error value #Value!
Pak Bagus kemudian mengasumsikan bahwa A3 mungkin merujuk ke B3 seperti pola
kondisi (IF) sebelum bagian tersebut.
Berikut formula dari Pak Bagus :
=IF(ISNUMBER(SEARCH("X",A3)),"PenggantiTolakan",IF(AND(B3-K3<>0,SUM(C3:F3)=0
),"BelumBayar",IF(AND(B3=0,OR(SUM(C3:F3)+K3=0))
,"PelunasanNotaPutih",IF(AND(B3=K3,SUM(C3:F3)+B3+H3=0),"PembayaranInvoice","
"))))

Bagian yang font-nya dibesarken, yang ada dalam formula pak Abdul dan Pak
Bagus (yang A3-nya Pak Abdul sudah diganti B3)
adalah bagian yang sama secara urutan susunan formula, tetapi berbeda secara
makna. Asumsikan saja B3=K3 bernilai TRUE.

Setelah dikumpulkan kedua bagian itu, akan tampak seperti : (A3 sudah
diganti dengan B3 supaya sama)
>> Pak Abdul : OR(C3+H3+B3=0,D3+H3+B3=0,E3+H3+B3=0,F3+H3+B3=0)
>> Pak Bagus : SUM(C3:F3)+B3+H3=0
Sekarang, mari asumsikan saja, nilai : (terlepas dari bagaimana
karakteristik masing-masing makna kolom relatif terhadap kolom lainnya)
H3+B3 adalah -100
C3=25;D3=25;E3=25;F3=25
Formula Pak Abdul akan menghasilkan FALSE karena 25-100=0 adalah FALSE
Formula Pak Bagus akan menghasilkan TRUE karena Sum(25,25,25,25)-100=0
adalah TRUE

Bagaimana kalau dicoba untuk membaca formula Pak Abdul secara utuh...
Dari formula Pak Abdul dapat diketahui ada 5 nilai hasil bertipe text, yaitu
:
1. "BelumBayar"
2. "PenggantiTolakan"
3. "PelunasanNotaPutih"
4. "PembayaranInvoice"
5. nullstring ("")

Hasil nomor 5 adalah ketika seluruh kriteria penentu 4 nilai hasil lainnya
tidak dapat terpenuhi.
Mari ditelaah satu per satu kriterianya.
1. "BelumBayar"
>> Harus memenuhi kondisi :
A. AND(C3=0,D3=0,E3=0,F3=0,ISNUMBER(SEARCH("X",A3)))
atau B. AND(B3-K3<>0,C3=0,D3=0,E3=0,F3=0)
>> dengan kata atau, maka susunan bisa disatukan menjadi :
AND(C3=0,D3=0,E3=0,F3=0,OR(ISNUMBER(SEARCH("X",A3)),B3-K3<>0))
>> susunan tersebut bisa disederhanakan menjadi : (AND ~ perkalian ; OR ~
penjumlahan)
AND(C3=0,D3=0,E3=0,F3=0)*(ISNUMBER(SEARCH("X",A3))+(B3-K3<>0))
>> bagian B3-K3<>0 yang berarti B3 dikurangi K3 bukan 0 bisa diubah menjadi
B3<>K3 karena B3-K3<>0 tercapai jika B3 tidak sama (<>) dengan 0
>> bagian ISNUMBER(SEARCH("X",A3)) adalah pemeriksaan akan kehadiran
karakter 'X' di A3, yang bisa juga diungkapkan dengan : CountIF(A3,"*X*")
>> jadi kriteria nomor 1 bisa menjadi :
AND(C3=0,D3=0,E3=0,F3=0)*(CountIF(A3,"*X*")+(B3<>K3))
>> Sampai disini, formula didapatkan baru berbentuk :
=IF( AND(C3=0,D3=0,E3=0,F3=0)*(CountIF(A3,"*X*")+(B3<>K3)) , "BelumBayar" ,
'kondisi nomor 2 nanti disini' )

2. "PenggantiTolakan"
>> Harus memenuhi kondisi : ISNUMBER( SEARCH("X",A3)
>> pada nomor 1 sudah didapatkan bahwa kondisi seperti ini bisa diganti
dengan : CountIF(A3,"*X*")
>> susunan formula untuk nomor 2 saja adalah :
IF( CountIF(A3,"*X*" , "PenggantiTolakan" , 'kondisi nomor 3 nanti
disini' )
>> Ketika kondisi nomor 2 ini masuk ke formula nomor 1, maka akan menjadi
=IF( AND(C3=0,D3=0,E3=0,F3=0)*(CountIF(A3,"*X*")+(B3<>K3))
, "BelumBayar"
, IF( CountIF(A3,"*X*" , "PenggantiTolakan" , 'kondisi nomor 3
nanti disini' )
)

3. "PelunasanNotaPutih"
>> Harus memenuhi kondisi :
AND(B3=0,OR(C3+K3=0,D3+K3=0,E3+K3=0,F3+K3=0)
>> dengan AND setara perkalian (*) dan OR setara penjumlahan (+), maka bisa
diubah menjadi :
(B3=0)*((C3=-K3)+(D3=-K3)+(E3=-K3)+(F3=-K3))
>> Karena bagian merah (OR) hanya membutuhkan minimal 1 bagian saja yang
benar untuk menghasilkan nilai TRUE,
maka pola susunan yang dibandingkan, yaitu cell C3 sampai F3, hanya
cukup dihitung mininal 1 (atau ada) yang sesuai.
>> Ungkapan bagian OR itu, yaitu bagian
((C3=-K3)+(D3=-K3)+(E3=-K3)+(F3=-K3)), dapat disederhanakan menjadi :
CountIF(C3:F3,-K3)
>> Jadi, kriteria untuk memenuhi nomor 3 ini adalah :
(B3=0)*CountIF(C3:F3,-K3)
>> Formula kondisi untuk nomor 3 saja adalah :
IF( (B3=0)*CountIF(C3:F3,-K3) , "PelunasanNotaPutih" , 'kondisi nomor 4
disini' )
>> Formula kondisi nomor 3 ketika masuk di formula keseluruhan hasil akhir
nomor 2 akan menjadi :
=IF( AND(C3=0,D3=0,E3=0,F3=0)*(CountIF(A3,"*X*")+(B3<>K3))
, "BelumBayar"
, IF( CountIF(A3,"*X*"
, "PenggantiTolakan"
, IF( (B3=0)*CountIF(C3:F3,-K3)
, "PelunasanNotaPutih"
, 'kondisi nomor 4 disini'
)
)
)

4. "PembayaranInvoice"
>> Harus memenuhi kondisi :
A. OR(
AND(B3=K3,B3+C3=0),AND(B3=K3,B3+D3=0),AND(B3=K3,B3+E3=0),AND(B3=K3,B3+F3=0)
)
atau B. AND(B3=K3,OR(C3+H3+B3=0,D3+H3+B3=0,E3+H3+B3=0,F3+H3+B3=0))
>> Bagian A bisa disederhanakan menjadi :
(B3=K3)*(-B3=C3) + (B3=K3)*(-B3=D3) + (B3=K3)*(-B3=E3) +
(B3=K3)*(-B3=F3)
yang dalam matematika (sifat-sifat operasi mematika yang asosiatif,
komutatif, distributif) bisa disederhanakan menjadi :
(B3=K3)*( (-B3=C3) + (-B3=D3) + (-B3=E3) + (-B3=F3) )
-> bagian yang merah bisa diubah menjadi : CountIF(C3:F3,-B3)
-> maka kondisi A menjadi :
(B3=K3)*CountIF(C3:F3,-B3)
>> Bagian B bisa disederhanakan menjadi :
(B3=K3)*CountIF(C3:F3,-(H3+B3))
>> Bagian A dengan bagian B dihubungkan dengan atau (setara penjumlahan),
maka menjadi :
(B3=K3)*CountIF(C3:F3,-B3) + (B3=K3)*CountIF(C3:F3,-(H3+B3))
yang bisa disederhanakan lagi menjadi :
(B3=K3)*( CountIF(C3:F3,-B3) + CountIF(C3:F3,-(H3+B3)) )
>> Formula nomor 4 menjadi :
IF( (B3=K3)*( CountIF(C3:F3,-B3) + CountIF(C3:F3,-(H3+B3)) ) ,
"PembayaranInvoice" , 'kondisi nomor 5 disini' )
>> Ketika dimasukkan ke formula lengkap hasil akhir nomor 3 akan menjadi :
=IF( AND(C3=0,D3=0,E3=0,F3=0)*(CountIF(A3,"*X*")+(B3<>K3))
, "BelumBayar"
, IF( CountIF(A3,"*X*"
, "PenggantiTolakan"
, IF( (B3=0)*CountIF(C3:F3,-K3)
, "PelunasanNotaPutih"
, IF( (B3=K3)*( CountIF(C3:F3,-B3)
+ CountIF(C3:F3,-(H3+B3)) )
,
"PembayaranInvoice"
, 'kondisi
nomor 5 disini'
)
)
)
)

5. nullstring ("")
>> Karena nilai nomor 5 adalah nilai ketika seluruh kondisi 1 sampai 4 tidak
terpenuhi, maka formula akhir nomor 4 bagian 'kondisi nomor 5 disini' bisa
diisi dengan nilai nomor 5 ini.
>> Formula akhir akan menjadi :
=IF( AND(C3=0,D3=0,E3=0,F3=0)*(CountIF(A3,"*X*")+(B3<>K3))
, "BelumBayar"
, IF( CountIF(A3,"*X*"
, "PenggantiTolakan"
, IF( (B3=0)*CountIF(C3:F3,-K3)
, "PelunasanNotaPutih"
, IF( (B3=K3)*( CountIF(C3:F3,-B3)
+ CountIF(C3:F3,-(H3+B3)) )
,
"PembayaranInvoice"
, ""
)
)
)
)

Jika disusun seutuhnya, maka formulanya :
=IF(AND(C3=0,D3=0,E3=0,F3=0)*(CountIF(A3,"*X*")+(B3<>K3)),"BelumBayar",IF(
CountIF(A3,"*X*","PenggantiTolakan",IF((B3=0)*CountIF(C3:F3,-K3),"PelunasanN
otaPutih",IF((B3=K3)*(CountIF(C3:F3,-B3)+CountIF(C3:F3,-(H3+B3))),"Pembayara
nInvoice",""))))

Tapi, semua dongeng di atas harus dicek lagi...
sapa tahu ada yang terlewatkan dan salah susun.

Wassalam,
Kid.

On Fri, Nov 23, 2012 at 9:26 AM, Bagus <bagus@kingjim.co.id> wrote:

Pak Abdul;

File terlampir semoga sesuai harapan

Bagus

----- Original Message -----

From: abdul dedy <mailto:abduldedysubhansyah@yahoo.co.id>

To: belajar-excel@yahoogroups.com

Sent: Friday, November 23, 2012 7:36 AM

Subject: [belajar-excel] APA YANG SALAH??? (fungsi IF)

dear suhu excel

semoga lampiran kali ini sudah memenuhi syarat

masih seperti kemarin, apa yang salah dengan IF saya ya?

berikut yang saya input ke dalam cell

=IF(AND(C3=0,D3=0,E3=0,F3=0,ISNUMBER(SEARCH("X",A3))),"BelumBayar",IF(ISNUMB
ER(SEARCH("X",A3)),"PenggantiTolakan",IF(AND(B3-K3<>0,C3=0,D3=0,E3=0,F3=0),"
BelumBayar",IF(AND(B3=0,OR(C3+K3=0,D3+K3=0,E3+K3=0,F3+K3=0)),"PelunasanNotaP
utih",IF(OR(AND(B3=K3,B3+C3=0),AND(B3=K3,B3+D3=0),AND(B3=K3,B3+E3=0),AND(B3=
K3,B3+F3=0)),"PembayaranInvoice",IF(AND(B3=K3,OR(C3+H3+A3=0,D3+H3+A3=0,E3+H3
+A3=0,F3+H3+A3=0)),"PembayaranInvoice",""))))))

thanks

_

Thu Nov 22, 2012 10:16 pm (PST) . Posted by:

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

Makasih mas Gilang.
Betul, ada yang kurang tutup kurung.

berikut revisi seperti yang ditemukan mas Gilang : (diblok kuning)
Bagian nomor 2 di kalimat :
>> Ketika kondisi nomor 2 ini masuk ke formula nomor 1, maka akan menjadi
=IF( *AND(**C3=0,D3=0,E3=0,F3=0**)*(**CountIF(A3,"*X*")**+(**B3<>K3**)**)*
, "BelumBayar"
, *IF( **CountIF(A3,"*X*" , **"PenggantiTolakan" , 'kondisi
nomor 3 nanti disini' ) *
)
menjadi :
>> Ketika kondisi nomor 2 ini masuk ke formula nomor 1, maka akan menjadi
=IF( *AND(**C3=0,D3=0,E3=0,F3=0**)*(**CountIF(A3,"*X*")**+(**B3<>K3**)**)*
, "BelumBayar"
, *IF( **CountIF(A3,"*X*") , **"PenggantiTolakan" , 'kondisi
nomor 3 nanti disini' ) *
)

hal ini berlaku untuk nomor 3, 4, dan 5 pada bagian yang sama.

Formula akhir menjadi :
=IF( *AND(**C3=0,D3=0,E3=0,F3=0**)*(**CountIF(A3,"*X*")**+(**B3<>K3**)**)*
, "BelumBayar"
, *IF( **CountIF(A3,"*X*" **)
, **"PenggantiTolakan"
, IF( **(B3=0)***CountIF(C3:F3,-K3)
, **"PelunasanNotaPutih"
, IF( **(B3=K3)*( **
CountIF(C3:F3,-B3) + **CountIF(C3:F3,**-(H3+B3)**) **)
, **
"PembayaranInvoice"
, **""
)
)
) *
)

Yang dikembalikan ke bentuk penulisan dalam formula box umumnya :
=IF(*AND(**C3=0,D3=0,E3=0,F3=0**)*(**CountIF(A3,"*X*")**+(**B3<>K3**)**)*,
"BelumBayar",*IF( **CountIF(A3,"*X*"**),**"PenggantiTolakan",IF(**(B3=0)***
CountIF(C3:F3,-K3),**"PelunasanNotaPutih",IF(**(B3=K3)*(**CountIF(C3:F3,-B3)
+**CountIF(C3:F3,**-(H3+B3)**)**),**"PembayaranInvoice",**"")))*)

2012/11/23 Gilang Sedar <gilang.smartdroid@gmail.com>

> **
>
>
> Ngapunten Mas Kid,****
>
> Saya ikutan nimbrung karena penasaran nyobain rumus njenengan****
>
> Kok setelah saya coba eh keluar error,****
>
>
> ** **
>
> Ternyata keliru nya ada disini ****
>
> ** **
>
> =IF(*AND(**C3=0,D3=0,E3=0,F3=0**)*(**CountIF(A3,"*X*")**+(**B3<>K3**)**)*,
> "BelumBayar",*IF( **CountIF(A3,"*X*"**,**"PenggantiTolakan",IF(**(B3=0)***
> CountIF(C3:F3,-K3),**"PelunasanNotaPutih",IF(**(B3=K3)*(**
> CountIF(C3:F3,-B3)+**CountIF(C3:F3,**-(H3+B3)**)**),**"PembayaranInvoice",
> **"")))*)****
>
> ** **
>
> Yang digaris bawahi, karena itu fungsi
> IF(Logical_test,[Value_if_true],[value_if_false])****
>
> *IF(**CountIF(A3,"*X*"**,**"PenggantiTolakan",*****
>
> ** **
>
> Logical test nya *(**CountIF(A3,"*X*"*****
>
> Value if true nya "PenggantiTolakan"****
>
> Dan value if false nya ke formula berikut nya.****
>
> ** **
>
> Karena kurung pada logical test nya lupa di tutup, maka ada "bocor"
> disitu. Solusinya tambahin kurung tutup****
>
> ** **
>
> Dan formula menjadi berikut :****
>
> ** **
>
> *=IF(AND(C3=0,D3=0,E3=0,F3=0)*(COUNTIF(A3,"*X*")+(B3<>K3)),"BelumBayar",**IF(
> COUNTIF(A3,"*X*"),"PenggantiTolakan"**
> ,IF((B3=0)*COUNTIF(C3:F3,-K3),"PelunasanNotaPutih",IF((B3=K3)*(COUNTIF(C3:F3,-B3)+COUNTIF(C3:F3,-(H3+B3))),"PembayaranInvoice",""))))
> *
>
> ** **
>
> ** **
>
> Mohon maaf kalo penjelasan saya mbuleti****
>
> ** **
>
> -Gilang Sedar-****
>
> ** **
>
>

Thu Nov 22, 2012 10:19 pm (PST) . Posted by:

"hendrik karnadi" hendrikkarnadi

Yang diganti yang diberi huruf tebal,
ActiveCell.Offset(0, 2).FormulaR1C1 = "=TEXT(RC[-2],""dd/mm/yy"")"

jika sheetnya sama.

Salam.
Hendrik Karnadi

________________________________
From: Winda Miranti <winda_1504@yahoo.co.id>
To: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Sent: Friday, 23 November 2012, 11:59
Subject: Bls: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
Trimakasi atas solusi nya mas Hendrik,
brarti nanti kalo saya mau menggunakan cara yg sama dengan rumus yg berbeda saya ganti bagian =TEXT(RC[-2],""dd/mm/yy"")" saja yg disesuaikan dengan rumusyg akan dipake?

Regards,
Winda

________________________________
Dari: hendrik karnadi <hendrikkarnadi@yahoo.com>
Kepada: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Dikirim: Jumat, 23 November 2012 9:39
Judul: Re: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
Coba copy paste macro ini ke module1,
Sub Tes()
    Dim Rng As Range
    Dim i As Long
    Application.ScreenUpdating = False
    Application.EnableEvents = False
    Sheets("Pertanyaan 2").Select
    Range("A2").Select
    Set Rng = Range("A2", Range("A2").End(xlDown))
    For i = 1 To Rng.Rows.Count
        ActiveCell.Offset(0, 2).FormulaR1C1 = "=TEXT(RC[-2],""dd/mm/yy"")"
        ActiveCell.Offset(1, 0).Select
    Next i
    Application.ScreenUpdating = True
    Application.EnableEvents = True
End Sub

Hasilnya seperti file terlampir (macro diattached ke tombol "FILTER")

Salam,
Hendrik Karnadi

________________________________
From: Winda Miranti <winda_1504@yahoo.co.id>
To: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Sent: Friday, 23 November 2012, 8:37
Subject: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
Dear Master Excel,

Melanjutkan pembahasan yang lama, ada yang mau saya tanyakan lagi :D
Saya menemukan kendala ketika data yang digunakan itu menggunakan row yg sangat banyak
Apakah ada cara utk mengefektifkan kerja makro sehingga kinerjanya menjadi lebih cepat?

Kemudian saya sudah mencoba utk menggunakan jurus dari Mas Aji utk menemukan baris paling akir
dan sudah coba utk mengotak atik rumus dari mas Hendrik juga utk menemukan baris trakirnya, tapi masi blm bisa
Maklum masi dalam tahap mempelajari makro :D

Mohon pencerahanya para master excel :)
Berikut saya lampirkan data excelnya

Regards,
Winda

________________________________
Dari: Winda Miranti <winda_1504@yahoo.co.id>
Kepada: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Dikirim: Jumat, 19 Oktober 2012 13:42
Judul: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
Trimakasi master excel atas pencerahanya, akan saya pelajari terlebih dahulu :D

Regards,
Winda

________________________________
Dari: hendrik karnadi <hendrikkarnadi@yahoo.com>
Kepada: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Dikirim: Jumat, 19 Oktober 2012 11:50
Judul: Fw: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
Terima kasih Mas Aji atas tambahan ilmunya.

Salam,
Hendrik Karnadi

----- Forwarded Message -----
From: aji mumpung <pupung1986@gmail.com>
To: belajar-excel@yahoogroups.com
Sent: Friday, 19 October 2012, 11:05
Subject: Re: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
ikutan ya.. biar rame hehehe..

cara lain untuk menemukan baris paling akhir adalah menggunakan kode berikut

Cells.SpecialCells(xlCellTypeLastCell).Row

hasilnya disimpan dalam sebuah variabel yang seharusnya sudah dideklarasikan di awal
jadi jika dalam range data terdapat beberapa baris kosing, masih bisa terdeteksi dalam looping For - Next

hal ini juga akan memperpendek waktu proses & mengurangi beban kerja macro yang hanya akan memproses dari baris data awal sampai dengan baris data akhir.. selain itu tidak perlu dilakukan pengecekan

cmiiw (kata mbak'e Colek Me If Im Wrong)

wassalam,

-aji mumpung-

Pada 19 Oktober 2012 10:56, hendrik karnadi <hendrikkarnadi@yahoo.com> menulis:

> 
>Dear Winda,
>
>
>Mengapa yang dibold tidak terbaca? 
>Karena disamping baris kosong pertama pada kolom B masih ada data (masih termasuk lingkup CurrentRegion), sedangkan disamping baris kosong kedua pada kolom B tidak ada data jadi tidak ikut terambil.
>
>
>Untuk itu perlu sedikit akal untuk menentukan baris akhir yang ada isinya.
>
>
>Coba lihat macro yang sudah diupdate untuk mengambil baris terakhir yang ada isinya.
>
>
>Salam,
>Hendrik Karnadi
>
>
>
>
>
>________________________________
> From: Winda Miranti <winda_1504@yahoo.co.id>
>To: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
>Sent: Friday, 19 October 2012, 9:46
>Subject: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih
>
>
>
> 
>Dear Mas Hendrik,
>
>Trimakasi sekali solusi nya mas hendrik kebenaran saya juga lagi menemukan kasus yang sama
>tapi hanya ingin sebatas per kolom saja misalnya hanya kolom B, saya coba otak atik tapi debug selalu hehe, bgmn cara membatasinya biar hanya membaca satu kolom saja?
>dan saya coba tambahkan data kebawah seperti data telampir, tetapi jika ada baris yg kosong dua kali, data setelah baris kosong yg kedua tersebut tidak terbaca
>Mohon pencerahanya mas hendrik :D
>
>Regards,
>Winda
>
>
>
>
>
>
>________________________________
> Dari: hendrik karnadi <hendrikkarnadi@yahoo.com>
>Kepada: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
>Dikirim: Jumat, 19 Oktober 2012 6:05
>Judul: Fw: [belajar-excel] Index Data Beberapa Kolom atau Lebih
>
>
> 
>Sekedar selingan, pake macro.
>
>
>Salam,
>Hendrik Karnadi
>
>
>
>----- Forwarded Message -----
>From: Mr. Kid <mr.nmkid@gmail.com>
>To: belajar-excel@yahoogroups.com
>Sent: Thursday, 18 October 2012, 23:47
>Subject: Re: [belajar-excel] Index Data Beberapa Kolom atau Lebih
>
>
> 
>1. Untuk cara 2, ada array formula bantu berbunyi : (cell M3)
>=MIN(IF(COUNTIF(N$2:N2,$B$3:$F$14)=0,ROW($B$3:$F$14)*1000+COLUMN($B$3:$F$14)))
>Kondisi yang ada baru 1, yaitu bagian CountIF. Belum ada pengkondisian berdasar ada atau tidaknya teks dalam data.
>Pengkondisian untuk mengambil cell yang ada datanya saja adalah dengan memeriksa jumlah karakter yang ada di dalam cell tersebut.
>( Len($B$3:$F$14) > 0 )
>
>Jadi, 2 kondisi yang harus digunakan adalah :
>>> ( COUNTIF(N$2:N2,$B$3:$F$14)=0 )
>>> ( Len($B$3:$F$14) > 0 )
>Keduanya harus terpenuhi, artinya harus dihubungkan dengan operator AND yang setara dengan kegiatan operasi matematis perkalian.
>Jadi kedua kondisi akan diekspresikan menjadi :
>( COUNTIF(N$2:N2,$B$3:$F$14)=0 )*( Len($B$3:$F$14) > 0 )
>
>Maka bagian CountIF dalam array formula diganti dengan 2 pengkondisian baru ini akan menjadi :
>=MIN(IF( ( COUNTIF(N$2:N2,$B$3:$F$14)=0 )*( Len($B$3:$F$14) > 0 ) ,ROW($B$3:$F$14)*1000+COLUMN($B$3:$F$14)))
>>> Jangan lupa untuk di-Enter sebagai Array formula dengan CTRL  SHIFT  ENTER <<
>
>2. Menghitung jumlah unique item (seperti cell H2 atau M2)
>Formula yang ada :
>=SUMPRODUCT(1/COUNTIF(B3:F14,B3:F14))
>Ketika ada cell di B3:F14 yang tidak ada datanya, maka akan menghasilkan hasil countif akan 0. Maka akan ada item yang kalkulasinya berupa 1/0 yang menghasilkan error value #DIV/0!
>Maka efek ketika hasil CountIF adalah 0 harus dinetralisir dengan suatu nilai yang bukan 0. CountIF menghasilkan 0 jika tidak ada data, maka kondisi tidak ada data bisa diubah hasilnya menjadi 1 yang setara TRUE. Maka Len(B3:F14)=0 akan bernilai TRUE ketika B3:F14 tidak ada datanya. Bunyi kondisi terhadap CountIF adalah sebagai berikut :
>>> Jika hasil CountIF adalah 0, maka isi dengan Len(B3:F14)=0
>>> Jika hasil CountIF bukan 0, maka isi dengan hasil CountIF
>Secara harfiah, translatenya ke bahasa formula menjadi :
>IF( COUNTIF(B3:F14,B3:F14)= 0 , ( Len(B3:F14)=0 ) , COUNTIF(B3:F14,B3:F14) )
>Dari kalimat ini, sebenarnya jika diperhatikan secara seksama, akan ada benang merah berbunyi :
>"Nilai hasil CountIF atau Len(B3:F14)=0"
>yang bahasa formulanya :
>( COUNTIF(B3:F14,B3:F14) + ( Len(B3:F14)=0 ) )
>Hasilnya, akan didapat bahwa seluruh cell yang tidak ada isinya akan bernilai TRUE (setara 1).
>Maka, 1/COUNTIF(B3:F14,B3:F14)
>akan menjadi :
>1/( COUNTIF(B3:F14,B3:F14) + ( Len(B3:F14)=0 ) )
>tetapi, akan terjadi 1/1 ketika cell tidak ada isinya, karena 1/( 0 + TRUE ) = 1/( 0 + 1 ) = 1/1
>Hal ini akan menghasilkan jumlah unique yang tidak tepat. Oleh sebab itu bagian 1 (biru) dalam :
>1/( COUNTIF(B3:F14,B3:F14) + ( Len(B3:F14)=0 ) )
>harus berupa pemfilteran bahwa jika cell berisi data maka bernilai 1 dan jika tidak berisi data bernilai 0.
>( Len(B3:F14)>0 )
>Maka formula lengkap :
>=SUMPRODUCT(( Len(B3:F14)>0 ) / ( COUNTIF(B3:F14,B3:F14) + ( Len(B3:F14)=0 ) ) )
>
>3. Cara1.
>untuk versi xl2007 (dengan IFError) array formulanya  (J3)
>=IFERROR(INDEX($H$3:$H$63,MATCH(0,COUNTIF(J$2:J2,$H$3:$H$63),0)),"")
>untuk semua versi (berdasar jumlah item unique yang mungkin) : (K3)
>=IF(ROW()-2>$H$2,"",INDEX($H$3:$H$63,MATCH(0,COUNTIF(K$2:K2,$H$3:$H$63),0)))
>memiliki benang merah pada bagian yang biru :
>MATCH(0,COUNTIF(K$2:K2,$H$3:$H$63),0)
>Bahasa manusianya :
>"Cari posisi angka 0 pada suatu data array yang berupa nilai-nilai jumlah cacah (CountIF) data dalam $H$3:$H$63 di suatu area K$2:K2 yang pencariannya harus bener-bener persis [0]"
>Kalimat 'nilai-nilai jumlah cacah data dalam $H$3:$H$63 di suatu area K$2:K2' akan menghasilkan angka bukan 0 jika memang telah ada di K$2:K2 dan menghasilkan 0 jika belum ada di K$2:K2. Padahal area K$2:K2 adalah hasil (output). Artinya, kalau sampai hasil CountIF adalah 0, maka data itu belum ada di area output alias data baru. Dengan demikian, fungsi Match tugasnya adalah selalu mendapatkan posisi data baru (data yang belum ada di output).
>Pada kondisi itu, tidak ada pengkondisian bahwa data di $H$3:$H$63 bukanlah bernilai 0.
>Jelas sudah diketahui bahwa data baru (belum ada di output) adalah yang COUNTIF(K$2:K2,$H$3:$H$63)=0
>Kondisi data di $H$3:$H$63 bukanlah bernilai 0 dapat diekspresikan sebagai :
>( $H$3:$H$63 <> 0 )
>
>Sampai disini, sudah ada 2 kondisi :
>1. data baru (belum ada dioutput) :
>( COUNTIF(K$2:K2,$H$3:$H$63)=0 )
>2. tidak adanya nilai di data $H$3:$H$63
>( $H$3:$H$63 <> 0 )
>Keduanya harus terpenuhi berarti setara AND yang setara perkalian.
>Maka array data dalam Match akan berupa :
>( COUNTIF(K$2:K2,$H$3:$H$63)=0 ) * ( $H$3:$H$63 <> 0 )
>Hasilnya adalah 1 (untuk data baru dan nilai data di $H$3:$H$63 bukanlah 0 ) atau 0 (untuk salah satu dari kedua kondisi yang tak terpenuhi).
>Jadi, yang menjadi lookup value (dicari oleh match) bukan lagi angka 0, melainkan angka 1
>Nah... bagian Match akan menjadi :
>MATCH(1 , ( COUNTIF(K$2:K2,$H$3:$H$63)=0 ) * ( $H$3:$H$63 <> 0 ) , 0 )
>
>Array formula lengkap masing-masing :
>1. untuk versi xl2007 :
>=IFERROR(INDEX($H$3:$H$63,MATCH(1 , ( COUNTIF(K$2:K2,$H$3:$H$63)=0 ) * ( $H$3:$H$63 <> 0 ) , 0 ) ),"")
>
>2. untuk semua versi :
>=IF(ROW()-2>$H$2,"",INDEX($H$3:$H$63,MATCH(1 , ( COUNTIF(K$2:K2,$H$3:$H$63)=0 ) * ( $H$3:$H$63 <> 0 ) , 0 ) ))
>
>Kesimpulannya :
>Pengubahan formula karena adanya perubahan kondisi (bertambah atau berkurang jumlah kondisinya), difokuskan pada penyusunan kondisi-kondisi baru yang menyertakan kondisi awal (sebelum berubah) secara konsisten. Seperti kondisi bahwa jika CountIF 0 artinya sebagai data baru bergabung bersama kondisi baru berupa ada data di suatu area (dengan Len misalnya).
>
>Wassalam,
>Kid.
>
>
>
>
>2012/10/18 M.Ade Alfarid <QA@kkmi.co.id>
>
>Dear,
>>
>>
>>Untuk menghilangkan angka 0 pada list index,
>>tambah rumus apa?
>>
>>Ade
>>
>>
>>
>>
>>On Mon, 15 Oct 2012 16:30:55 +0700, Mr. Kid <mr.nmkid@gmail.com> wrote:
>>
>>
>>> Coba file terlampir.
>>> Ada yang dibantu oleh sebuah kolom untuk menyusun data multi kolom
>>> menjadi
>>> data sekolom.
>>>
>>> Wassalam,
>>> Kid
>>>
>>>
>>> 2012/10/15 M.Ade Alfarid <QA@kkmi.co.id>
>>>
>>>> **
>>
>>>>
>>>>
>>>> BeExceller,
>>>>
>>>> Bagaimana untuk mengurut banyak data beberapa kolom,
>>>> data dobel dihitung sekali saja?
>>>> Terimakasih
>>>> --
>>>> ade
>>>>
>>
>
>
>
>
>
>
>

Thu Nov 22, 2012 10:55 pm (PST) . Posted by:

"Winda Miranti" winda_1504

trimakasi mas Hendrik akan saya coba terlebih dahulu :D

Regards,
Winda

________________________________
Dari: hendrik karnadi <hendrikkarnadi@yahoo.com>
Kepada: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Dikirim: Jumat, 23 November 2012 13:19
Judul: Re: Bls: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
Yang diganti yang diberi huruf tebal,
ActiveCell.Offset(0, 2).FormulaR1C1 = "=TEXT(RC[-2],""dd/mm/yy"")"

jika sheetnya sama.

Salam.
Hendrik Karnadi

________________________________
From: Winda Miranti <winda_1504@yahoo.co.id>
To: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Sent: Friday, 23 November 2012, 11:59
Subject: Bls: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
Trimakasi atas solusi nya mas Hendrik,
brarti nanti kalo saya mau menggunakan cara yg sama dengan rumus yg berbeda saya ganti bagian =TEXT(RC[-2],""dd/mm/yy"")" saja yg disesuaikan dengan rumusyg akan dipake?

Regards,
Winda

________________________________
Dari: hendrik karnadi <hendrikkarnadi@yahoo.com>
Kepada: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Dikirim: Jumat, 23 November 2012 9:39
Judul: Re: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
Coba copy paste macro ini ke module1,
Sub Tes()
    Dim Rng As Range
    Dim i As Long
    Application.ScreenUpdating = False
    Application.EnableEvents = False
    Sheets("Pertanyaan 2").Select
    Range("A2").Select
    Set Rng = Range("A2", Range("A2").End(xlDown))
    For i = 1 To Rng.Rows.Count
        ActiveCell.Offset(0, 2).FormulaR1C1 = "=TEXT(RC[-2],""dd/mm/yy"")"
        ActiveCell.Offset(1, 0).Select
    Next i
    Application.ScreenUpdating = True
    Application.EnableEvents = True
End Sub

Hasilnya seperti file terlampir (macro diattached ke tombol "FILTER")

Salam,
Hendrik Karnadi

________________________________
From: Winda Miranti <winda_1504@yahoo.co.id>
To: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Sent: Friday, 23 November 2012, 8:37
Subject: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
Dear Master Excel,

Melanjutkan pembahasan yang lama, ada yang mau saya tanyakan lagi :D
Saya menemukan kendala ketika data yang digunakan itu menggunakan row yg sangat banyak
Apakah ada cara utk mengefektifkan kerja makro sehingga kinerjanya menjadi lebih cepat?

Kemudian saya sudah mencoba utk menggunakan jurus dari Mas Aji utk menemukan baris paling akir
dan sudah coba utk mengotak atik rumus dari mas Hendrik juga utk menemukan baris trakirnya, tapi masi blm bisa
Maklum masi dalam tahap mempelajari makro :D

Mohon pencerahanya para master excel :)
Berikut saya lampirkan data excelnya

Regards,
Winda

________________________________
Dari: Winda Miranti <winda_1504@yahoo.co.id>
Kepada: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Dikirim: Jumat, 19 Oktober 2012 13:42
Judul: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
Trimakasi master excel atas pencerahanya, akan saya pelajari terlebih dahulu :D

Regards,
Winda

________________________________
Dari: hendrik karnadi <hendrikkarnadi@yahoo.com>
Kepada: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Dikirim: Jumat, 19 Oktober 2012 11:50
Judul: Fw: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
Terima kasih Mas Aji atas tambahan ilmunya.

Salam,
Hendrik Karnadi

----- Forwarded Message -----
From: aji mumpung <pupung1986@gmail.com>
To: belajar-excel@yahoogroups.com
Sent: Friday, 19 October 2012, 11:05
Subject: Re: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
ikutan ya.. biar rame hehehe..

cara lain untuk menemukan baris paling akhir adalah menggunakan kode berikut

Cells.SpecialCells(xlCellTypeLastCell).Row

hasilnya disimpan dalam sebuah variabel yang seharusnya sudah dideklarasikan di awal
jadi jika dalam range data terdapat beberapa baris kosing, masih bisa terdeteksi dalam looping For - Next

hal ini juga akan memperpendek waktu proses & mengurangi beban kerja macro yang hanya akan memproses dari baris data awal sampai dengan baris data akhir.. selain itu tidak perlu dilakukan pengecekan

cmiiw (kata mbak'e Colek Me If Im Wrong)

wassalam,

-aji mumpung-

Pada 19 Oktober 2012 10:56, hendrik karnadi <hendrikkarnadi@yahoo.com> menulis:

> 
>Dear Winda,
>
>
>Mengapa yang dibold tidak terbaca? 
>Karena disamping baris kosong pertama pada kolom B masih ada data (masih termasuk lingkup CurrentRegion), sedangkan disamping baris kosong kedua pada kolom B tidak ada data jadi tidak ikut terambil.
>
>
>Untuk itu perlu sedikit akal untuk menentukan baris akhir yang ada isinya.
>
>
>Coba lihat macro yang sudah diupdate untuk mengambil baris terakhir yang ada isinya.
>
>
>Salam,
>Hendrik Karnadi
>
>
>
>
>
>________________________________
> From: Winda Miranti <winda_1504@yahoo.co.id>
>To: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
>Sent: Friday, 19 October 2012, 9:46
>Subject: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih
>
>
>
> 
>Dear Mas Hendrik,
>
>Trimakasi sekali solusi nya mas hendrik kebenaran saya juga lagi menemukan kasus yang sama
>tapi hanya ingin sebatas per kolom saja misalnya hanya kolom B, saya coba otak atik tapi debug selalu hehe, bgmn cara membatasinya biar hanya membaca satu kolom saja?
>dan saya coba tambahkan data kebawah seperti data telampir, tetapi jika ada baris yg kosong dua kali, data setelah baris kosong yg kedua tersebut tidak terbaca
>Mohon pencerahanya mas hendrik :D
>
>Regards,
>Winda
>
>
>
>
>
>
>________________________________
> Dari: hendrik karnadi <hendrikkarnadi@yahoo.com>
>Kepada: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
>Dikirim: Jumat, 19 Oktober 2012 6:05
>Judul: Fw: [belajar-excel] Index Data Beberapa Kolom atau Lebih
>
>
> 
>Sekedar selingan, pake macro.
>
>
>Salam,
>Hendrik Karnadi
>
>
>
>----- Forwarded Message -----
>From: Mr. Kid <mr.nmkid@gmail.com>
>To: belajar-excel@yahoogroups.com
>Sent: Thursday, 18 October 2012, 23:47
>Subject: Re: [belajar-excel] Index Data Beberapa Kolom atau Lebih
>
>
> 
>1. Untuk cara 2, ada array formula bantu berbunyi : (cell M3)
>=MIN(IF(COUNTIF(N$2:N2,$B$3:$F$14)=0,ROW($B$3:$F$14)*1000+COLUMN($B$3:$F$14)))
>Kondisi yang ada baru 1, yaitu bagian CountIF. Belum ada pengkondisian berdasar ada atau tidaknya teks dalam data.
>Pengkondisian untuk mengambil cell yang ada datanya saja adalah dengan memeriksa jumlah karakter yang ada di dalam cell tersebut.
>( Len($B$3:$F$14) > 0 )
>
>Jadi, 2 kondisi yang harus digunakan adalah :
>>> ( COUNTIF(N$2:N2,$B$3:$F$14)=0 )
>>> ( Len($B$3:$F$14) > 0 )
>Keduanya harus terpenuhi, artinya harus dihubungkan dengan operator AND yang setara dengan kegiatan operasi matematis perkalian.
>Jadi kedua kondisi akan diekspresikan menjadi :
>( COUNTIF(N$2:N2,$B$3:$F$14)=0 )*( Len($B$3:$F$14) > 0 )
>
>Maka bagian CountIF dalam array formula diganti dengan 2 pengkondisian baru ini akan menjadi :
>=MIN(IF( ( COUNTIF(N$2:N2,$B$3:$F$14)=0 )*( Len($B$3:$F$14) > 0 ) ,ROW($B$3:$F$14)*1000+COLUMN($B$3:$F$14)))
>>> Jangan lupa untuk di-Enter sebagai Array formula dengan CTRL  SHIFT  ENTER <<
>
>2. Menghitung jumlah unique item (seperti cell H2 atau M2)
>Formula yang ada :
>=SUMPRODUCT(1/COUNTIF(B3:F14,B3:F14))
>Ketika ada cell di B3:F14 yang tidak ada datanya, maka akan menghasilkan hasil countif akan 0. Maka akan ada item yang kalkulasinya berupa 1/0 yang menghasilkan error value #DIV/0!
>Maka efek ketika hasil CountIF adalah 0 harus dinetralisir dengan suatu nilai yang bukan 0. CountIF menghasilkan 0 jika tidak ada data, maka kondisi tidak ada data bisa diubah hasilnya menjadi 1 yang setara TRUE. Maka Len(B3:F14)=0 akan bernilai TRUE ketika B3:F14 tidak ada datanya. Bunyi kondisi terhadap CountIF adalah sebagai berikut :
>>> Jika hasil CountIF adalah 0, maka isi dengan Len(B3:F14)=0
>>> Jika hasil CountIF bukan 0, maka isi dengan hasil CountIF
>Secara harfiah, translatenya ke bahasa formula menjadi :
>IF( COUNTIF(B3:F14,B3:F14)= 0 , ( Len(B3:F14)=0 ) , COUNTIF(B3:F14,B3:F14) )
>Dari kalimat ini, sebenarnya jika diperhatikan secara seksama, akan ada benang merah berbunyi :
>"Nilai hasil CountIF atau Len(B3:F14)=0"
>yang bahasa formulanya :
>( COUNTIF(B3:F14,B3:F14) + ( Len(B3:F14)=0 ) )
>Hasilnya, akan didapat bahwa seluruh cell yang tidak ada isinya akan bernilai TRUE (setara 1).
>Maka, 1/COUNTIF(B3:F14,B3:F14)
>akan menjadi :
>1/( COUNTIF(B3:F14,B3:F14) + ( Len(B3:F14)=0 ) )
>tetapi, akan terjadi 1/1 ketika cell tidak ada isinya, karena 1/( 0 + TRUE ) = 1/( 0 + 1 ) = 1/1
>Hal ini akan menghasilkan jumlah unique yang tidak tepat. Oleh sebab itu bagian 1 (biru) dalam :
>1/( COUNTIF(B3:F14,B3:F14) + ( Len(B3:F14)=0 ) )
>harus berupa pemfilteran bahwa jika cell berisi data maka bernilai 1 dan jika tidak berisi data bernilai 0.
>( Len(B3:F14)>0 )
>Maka formula lengkap :
>=SUMPRODUCT(( Len(B3:F14)>0 ) / ( COUNTIF(B3:F14,B3:F14) + ( Len(B3:F14)=0 ) ) )
>
>3. Cara1.
>untuk versi xl2007 (dengan IFError) array formulanya  (J3)
>=IFERROR(INDEX($H$3:$H$63,MATCH(0,COUNTIF(J$2:J2,$H$3:$H$63),0)),"")
>untuk semua versi (berdasar jumlah item unique yang mungkin) : (K3)
>=IF(ROW()-2>$H$2,"",INDEX($H$3:$H$63,MATCH(0,COUNTIF(K$2:K2,$H$3:$H$63),0)))
>memiliki benang merah pada bagian yang biru :
>MATCH(0,COUNTIF(K$2:K2,$H$3:$H$63),0)
>Bahasa manusianya :
>"Cari posisi angka 0 pada suatu data array yang berupa nilai-nilai jumlah cacah (CountIF) data dalam $H$3:$H$63 di suatu area K$2:K2 yang pencariannya harus bener-bener persis [0]"
>Kalimat 'nilai-nilai jumlah cacah data dalam $H$3:$H$63 di suatu area K$2:K2' akan menghasilkan angka bukan 0 jika memang telah ada di K$2:K2 dan menghasilkan 0 jika belum ada di K$2:K2. Padahal area K$2:K2 adalah hasil (output). Artinya, kalau sampai hasil CountIF adalah 0, maka data itu belum ada di area output alias data baru. Dengan demikian, fungsi Match tugasnya adalah selalu mendapatkan posisi data baru (data yang belum ada di output).
>Pada kondisi itu, tidak ada pengkondisian bahwa data di $H$3:$H$63 bukanlah bernilai 0.
>Jelas sudah diketahui bahwa data baru (belum ada di output) adalah yang COUNTIF(K$2:K2,$H$3:$H$63)=0
>Kondisi data di $H$3:$H$63 bukanlah bernilai 0 dapat diekspresikan sebagai :
>( $H$3:$H$63 <> 0 )
>
>Sampai disini, sudah ada 2 kondisi :
>1. data baru (belum ada dioutput) :
>( COUNTIF(K$2:K2,$H$3:$H$63)=0 )
>2. tidak adanya nilai di data $H$3:$H$63
>( $H$3:$H$63 <> 0 )
>Keduanya harus terpenuhi berarti setara AND yang setara perkalian.
>Maka array data dalam Match akan berupa :
>( COUNTIF(K$2:K2,$H$3:$H$63)=0 ) * ( $H$3:$H$63 <> 0 )
>Hasilnya adalah 1 (untuk data baru dan nilai data di $H$3:$H$63 bukanlah 0 ) atau 0 (untuk salah satu dari kedua kondisi yang tak terpenuhi).
>Jadi, yang menjadi lookup value (dicari oleh match) bukan lagi angka 0, melainkan angka 1
>Nah... bagian Match akan menjadi :
>MATCH(1 , ( COUNTIF(K$2:K2,$H$3:$H$63)=0 ) * ( $H$3:$H$63 <> 0 ) , 0 )
>
>Array formula lengkap masing-masing :
>1. untuk versi xl2007 :
>=IFERROR(INDEX($H$3:$H$63,MATCH(1 , ( COUNTIF(K$2:K2,$H$3:$H$63)=0 ) * ( $H$3:$H$63 <> 0 ) , 0 ) ),"")
>
>2. untuk semua versi :
>=IF(ROW()-2>$H$2,"",INDEX($H$3:$H$63,MATCH(1 , ( COUNTIF(K$2:K2,$H$3:$H$63)=0 ) * ( $H$3:$H$63 <> 0 ) , 0 ) ))
>
>Kesimpulannya :
>Pengubahan formula karena adanya perubahan kondisi (bertambah atau berkurang jumlah kondisinya), difokuskan pada penyusunan kondisi-kondisi baru yang menyertakan kondisi awal (sebelum berubah) secara konsisten. Seperti kondisi bahwa jika CountIF 0 artinya sebagai data baru bergabung bersama kondisi baru berupa ada data di suatu area (dengan Len misalnya).
>
>Wassalam,
>Kid.
>
>
>
>
>2012/10/18 M.Ade Alfarid <QA@kkmi.co.id>
>
>Dear,
>>
>>
>>Untuk menghilangkan angka 0 pada list index,
>>tambah rumus apa?
>>
>>Ade
>>
>>
>>
>>
>>On Mon, 15 Oct 2012 16:30:55 +0700, Mr. Kid <mr.nmkid@gmail.com> wrote:
>>
>>
>>> Coba file terlampir.
>>> Ada yang dibantu oleh sebuah kolom untuk menyusun data multi kolom
>>> menjadi
>>> data sekolom.
>>>
>>> Wassalam,
>>> Kid
>>>
>>>
>>> 2012/10/15 M.Ade Alfarid <QA@kkmi.co.id>
>>>
>>>> **
>>
>>>>
>>>>
>>>> BeExceller,
>>>>
>>>> Bagaimana untuk mengurut banyak data beberapa kolom,
>>>> data dobel dihitung sekali saja?
>>>> Terimakasih
>>>> --
>>>> ade
>>>>
>>
>
>
>
>
>
>
>

Fri Nov 23, 2012 12:37 am (PST) . Posted by:

"Winda Miranti" winda_1504

Mas Hendrik maaf saya mau bertanya lagi,kalo terdapat baris yg kosong,baris selanjutnya itu tidak terbaca
bgmnkah kalimat VB nya?

dan di rumus yg mas hendrik berikan pertama kali kl ada baris yg kosong masi tetap akan terbaca,bagian mana kah yg menyatakan baris kosong tetap dilanjutkan:
 Â Ã‚  brsakh = Range("W65000").End(xlUp).Row
 Â Ã‚  Set Rng = Range("W5" & ":W" & brsakh)
 Â Ã‚  Range("AE5", Range("AE5").End(xlDown)).ClearContents
 Â Ã‚  For Each r In Rng
 Â Ã‚ Ã‚ Ã‚ Ã‚ Ã‚  If r <> "" Then
 Â Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚  Set hsl = Range("AE5").CurrentRegion
 Â Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚  If WorksheetFunction.CountIf(hsl, r) = 0 Then
 Â Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚  brshsl = brshsl + 1
 Â Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚  Range("AE" & brshsl) = r
 Â Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚ Ã‚  End If
 Â Ã‚ Ã‚ Ã‚ Ã‚ Ã‚  End If
 Â Ã‚  Next r
 Â Ã‚  Cancel = True

berikut saya lampir kan excelnya
Trimaksi :)

________________________________
Dari: Winda Miranti <winda_1504@yahoo.co.id>
Kepada: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Dikirim: Jumat, 23 November 2012 13:51
Judul: Bls: Bls: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
trimakasi mas Hendrik akan saya coba terlebih dahulu :D

Regards,
Winda

________________________________
Dari: hendrik karnadi <hendrikkarnadi@yahoo.com>
Kepada: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Dikirim: Jumat, 23 November 2012 13:19
Judul: Re: Bls: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
Yang diganti yang diberi huruf tebal,
ActiveCell.Offset(0, 2).FormulaR1C1 = "=TEXT(RC[-2],""dd/mm/yy"")"

jika sheetnya sama.

Salam.
Hendrik Karnadi

________________________________
From: Winda Miranti <winda_1504@yahoo.co.id>
To: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Sent: Friday, 23 November 2012, 11:59
Subject: Bls: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
Trimakasi atas solusi nya mas Hendrik,
brarti nanti kalo saya mau menggunakan cara yg sama dengan rumus yg berbeda saya ganti bagian =TEXT(RC[-2],""dd/mm/yy"")" saja yg disesuaikan dengan rumusyg akan dipake?

Regards,
Winda

________________________________
Dari: hendrik karnadi <hendrikkarnadi@yahoo.com>
Kepada: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Dikirim: Jumat, 23 November 2012 9:39
Judul: Re: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
Coba copy paste macro ini ke module1,
Sub Tes()
    Dim Rng As Range
    Dim i As Long
    Application.ScreenUpdating = False
    Application.EnableEvents = False
    Sheets("Pertanyaan 2").Select
    Range("A2").Select
    Set Rng = Range("A2", Range("A2").End(xlDown))
    For i = 1 To Rng.Rows.Count
        ActiveCell.Offset(0, 2).FormulaR1C1 = "=TEXT(RC[-2],""dd/mm/yy"")"
        ActiveCell.Offset(1, 0).Select
    Next i
    Application.ScreenUpdating = True
    Application.EnableEvents = True
End Sub

Hasilnya seperti file terlampir (macro diattached ke tombol "FILTER")

Salam,
Hendrik Karnadi

________________________________
From: Winda Miranti <winda_1504@yahoo.co.id>
To: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Sent: Friday, 23 November 2012, 8:37
Subject: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
Dear Master Excel,

Melanjutkan pembahasan yang lama, ada yang mau saya tanyakan lagi :D
Saya menemukan kendala ketika data yang digunakan itu menggunakan row yg sangat banyak
Apakah ada cara utk mengefektifkan kerja makro sehingga kinerjanya menjadi lebih cepat?

Kemudian saya sudah mencoba utk menggunakan jurus dari Mas Aji utk menemukan baris paling akir
dan sudah coba utk mengotak atik rumus dari mas Hendrik juga utk menemukan baris trakirnya, tapi masi blm bisa
Maklum masi dalam tahap mempelajari makro :D

Mohon pencerahanya para master excel :)
Berikut saya lampirkan data excelnya

Regards,
Winda

________________________________
Dari: Winda Miranti <winda_1504@yahoo.co.id>
Kepada: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Dikirim: Jumat, 19 Oktober 2012 13:42
Judul: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
Trimakasi master excel atas pencerahanya, akan saya pelajari terlebih dahulu :D

Regards,
Winda

________________________________
Dari: hendrik karnadi <hendrikkarnadi@yahoo.com>
Kepada: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
Dikirim: Jumat, 19 Oktober 2012 11:50
Judul: Fw: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
Terima kasih Mas Aji atas tambahan ilmunya.

Salam,
Hendrik Karnadi

----- Forwarded Message -----
From: aji mumpung <pupung1986@gmail.com>
To: belajar-excel@yahoogroups.com
Sent: Friday, 19 October 2012, 11:05
Subject: Re: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih


 
ikutan ya.. biar rame hehehe..

cara lain untuk menemukan baris paling akhir adalah menggunakan kode berikut

Cells.SpecialCells(xlCellTypeLastCell).Row

hasilnya disimpan dalam sebuah variabel yang seharusnya sudah dideklarasikan di awal
jadi jika dalam range data terdapat beberapa baris kosing, masih bisa terdeteksi dalam looping For - Next

hal ini juga akan memperpendek waktu proses & mengurangi beban kerja macro yang hanya akan memproses dari baris data awal sampai dengan baris data akhir.. selain itu tidak perlu dilakukan pengecekan

cmiiw (kata mbak'e Colek Me If Im Wrong)

wassalam,

-aji mumpung-

Pada 19 Oktober 2012 10:56, hendrik karnadi <hendrikkarnadi@yahoo.com> menulis:

> 
>Dear Winda,
>
>
>Mengapa yang dibold tidak terbaca? 
>Karena disamping baris kosong pertama pada kolom B masih ada data (masih termasuk lingkup CurrentRegion), sedangkan disamping baris kosong kedua pada kolom B tidak ada data jadi tidak ikut terambil.
>
>
>Untuk itu perlu sedikit akal untuk menentukan baris akhir yang ada isinya.
>
>
>Coba lihat macro yang sudah diupdate untuk mengambil baris terakhir yang ada isinya.
>
>
>Salam,
>Hendrik Karnadi
>
>
>
>
>
>________________________________
> From: Winda Miranti <winda_1504@yahoo.co.id>
>To: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
>Sent: Friday, 19 October 2012, 9:46
>Subject: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih
>
>
>
> 
>Dear Mas Hendrik,
>
>Trimakasi sekali solusi nya mas hendrik kebenaran saya juga lagi menemukan kasus yang sama
>tapi hanya ingin sebatas per kolom saja misalnya hanya kolom B, saya coba otak atik tapi debug selalu hehe, bgmn cara membatasinya biar hanya membaca satu kolom saja?
>dan saya coba tambahkan data kebawah seperti data telampir, tetapi jika ada baris yg kosong dua kali, data setelah baris kosong yg kedua tersebut tidak terbaca
>Mohon pencerahanya mas hendrik :D
>
>Regards,
>Winda
>
>
>
>
>
>
>________________________________
> Dari: hendrik karnadi <hendrikkarnadi@yahoo.com>
>Kepada: "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
>Dikirim: Jumat, 19 Oktober 2012 6:05
>Judul: Fw: [belajar-excel] Index Data Beberapa Kolom atau Lebih
>
>
> 
>Sekedar selingan, pake macro.
>
>
>Salam,
>Hendrik Karnadi
>
>
>
>----- Forwarded Message -----
>From: Mr. Kid <mr.nmkid@gmail.com>
>To: belajar-excel@yahoogroups.com
>Sent: Thursday, 18 October 2012, 23:47
>Subject: Re: [belajar-excel] Index Data Beberapa Kolom atau Lebih
>
>
> 
>1. Untuk cara 2, ada array formula bantu berbunyi : (cell M3)
>=MIN(IF(COUNTIF(N$2:N2,$B$3:$F$14)=0,ROW($B$3:$F$14)*1000+COLUMN($B$3:$F$14)))
>Kondisi yang ada baru 1, yaitu bagian CountIF. Belum ada pengkondisian berdasar ada atau tidaknya teks dalam data.
>Pengkondisian untuk mengambil cell yang ada datanya saja adalah dengan memeriksa jumlah karakter yang ada di dalam cell tersebut.
>( Len($B$3:$F$14) > 0 )
>
>Jadi, 2 kondisi yang harus digunakan adalah :
>>> ( COUNTIF(N$2:N2,$B$3:$F$14)=0 )
>>> ( Len($B$3:$F$14) > 0 )
>Keduanya harus terpenuhi, artinya harus dihubungkan dengan operator AND yang setara dengan kegiatan operasi matematis perkalian.
>Jadi kedua kondisi akan diekspresikan menjadi :
>( COUNTIF(N$2:N2,$B$3:$F$14)=0 )*( Len($B$3:$F$14) > 0 )
>
>Maka bagian CountIF dalam array formula diganti dengan 2 pengkondisian baru ini akan menjadi :
>=MIN(IF( ( COUNTIF(N$2:N2,$B$3:$F$14)=0 )*( Len($B$3:$F$14) > 0 ) ,ROW($B$3:$F$14)*1000+COLUMN($B$3:$F$14)))
>>> Jangan lupa untuk di-Enter sebagai Array formula dengan CTRL  SHIFT  ENTER <<
>
>2. Menghitung jumlah unique item (seperti cell H2 atau M2)
>Formula yang ada :
>=SUMPRODUCT(1/COUNTIF(B3:F14,B3:F14))
>Ketika ada cell di B3:F14 yang tidak ada datanya, maka akan menghasilkan hasil countif akan 0. Maka akan ada item yang kalkulasinya berupa 1/0 yang menghasilkan error value #DIV/0!
>Maka efek ketika hasil CountIF adalah 0 harus dinetralisir dengan suatu nilai yang bukan 0. CountIF menghasilkan 0 jika tidak ada data, maka kondisi tidak ada data bisa diubah hasilnya menjadi 1 yang setara TRUE. Maka Len(B3:F14)=0 akan bernilai TRUE ketika B3:F14 tidak ada datanya. Bunyi kondisi terhadap CountIF adalah sebagai berikut :
>>> Jika hasil CountIF adalah 0, maka isi dengan Len(B3:F14)=0
>>> Jika hasil CountIF bukan 0, maka isi dengan hasil CountIF
>Secara harfiah, translatenya ke bahasa formula menjadi :
>IF( COUNTIF(B3:F14,B3:F14)= 0 , ( Len(B3:F14)=0 ) , COUNTIF(B3:F14,B3:F14) )
>Dari kalimat ini, sebenarnya jika diperhatikan secara seksama, akan ada benang merah berbunyi :
>"Nilai hasil CountIF atau Len(B3:F14)=0"
>yang bahasa formulanya :
>( COUNTIF(B3:F14,B3:F14) + ( Len(B3:F14)=0 ) )
>Hasilnya, akan didapat bahwa seluruh cell yang tidak ada isinya akan bernilai TRUE (setara 1).
>Maka, 1/COUNTIF(B3:F14,B3:F14)
>akan menjadi :
>1/( COUNTIF(B3:F14,B3:F14) + ( Len(B3:F14)=0 ) )
>tetapi, akan terjadi 1/1 ketika cell tidak ada isinya, karena 1/( 0 + TRUE ) = 1/( 0 + 1 ) = 1/1
>Hal ini akan menghasilkan jumlah unique yang tidak tepat. Oleh sebab itu bagian 1 (biru) dalam :
>1/( COUNTIF(B3:F14,B3:F14) + ( Len(B3:F14)=0 ) )
>harus berupa pemfilteran bahwa jika cell berisi data maka bernilai 1 dan jika tidak berisi data bernilai 0.
>( Len(B3:F14)>0 )
>Maka formula lengkap :
>=SUMPRODUCT(( Len(B3:F14)>0 ) / ( COUNTIF(B3:F14,B3:F14) + ( Len(B3:F14)=0 ) ) )
>
>3. Cara1.
>untuk versi xl2007 (dengan IFError) array formulanya  (J3)
>=IFERROR(INDEX($H$3:$H$63,MATCH(0,COUNTIF(J$2:J2,$H$3:$H$63),0)),"")
>untuk semua versi (berdasar jumlah item unique yang mungkin) : (K3)
>=IF(ROW()-2>$H$2,"",INDEX($H$3:$H$63,MATCH(0,COUNTIF(K$2:K2,$H$3:$H$63),0)))
>memiliki benang merah pada bagian yang biru :
>MATCH(0,COUNTIF(K$2:K2,$H$3:$H$63),0)
>Bahasa manusianya :
>"Cari posisi angka 0 pada suatu data array yang berupa nilai-nilai jumlah cacah (CountIF) data dalam $H$3:$H$63 di suatu area K$2:K2 yang pencariannya harus bener-bener persis [0]"
>Kalimat 'nilai-nilai jumlah cacah data dalam $H$3:$H$63 di suatu area K$2:K2' akan menghasilkan angka bukan 0 jika memang telah ada di K$2:K2 dan menghasilkan 0 jika belum ada di K$2:K2. Padahal area K$2:K2 adalah hasil (output). Artinya, kalau sampai hasil CountIF adalah 0, maka data itu belum ada di area output alias data baru. Dengan demikian, fungsi Match tugasnya adalah selalu mendapatkan posisi data baru (data yang belum ada di output).
>Pada kondisi itu, tidak ada pengkondisian bahwa data di $H$3:$H$63 bukanlah bernilai 0.
>Jelas sudah diketahui bahwa data baru (belum ada di output) adalah yang COUNTIF(K$2:K2,$H$3:$H$63)=0
>Kondisi data di $H$3:$H$63 bukanlah bernilai 0 dapat diekspresikan sebagai :
>( $H$3:$H$63 <> 0 )
>
>Sampai disini, sudah ada 2 kondisi :
>1. data baru (belum ada dioutput) :
>( COUNTIF(K$2:K2,$H$3:$H$63)=0 )
>2. tidak adanya nilai di data $H$3:$H$63
>( $H$3:$H$63 <> 0 )
>Keduanya harus terpenuhi berarti setara AND yang setara perkalian.
>Maka array data dalam Match akan berupa :
>( COUNTIF(K$2:K2,$H$3:$H$63)=0 ) * ( $H$3:$H$63 <> 0 )
>Hasilnya adalah 1 (untuk data baru dan nilai data di $H$3:$H$63 bukanlah 0 ) atau 0 (untuk salah satu dari kedua kondisi yang tak terpenuhi).
>Jadi, yang menjadi lookup value (dicari oleh match) bukan lagi angka 0, melainkan angka 1
>Nah... bagian Match akan menjadi :
>MATCH(1 , ( COUNTIF(K$2:K2,$H$3:$H$63)=0 ) * ( $H$3:$H$63 <> 0 ) , 0 )
>
>Array formula lengkap masing-masing :
>1. untuk versi xl2007 :
>=IFERROR(INDEX($H$3:$H$63,MATCH(1 , ( COUNTIF(K$2:K2,$H$3:$H$63)=0 ) * ( $H$3:$H$63 <> 0 ) , 0 ) ),"")
>
>2. untuk semua versi :
>=IF(ROW()-2>$H$2,"",INDEX($H$3:$H$63,MATCH(1 , ( COUNTIF(K$2:K2,$H$3:$H$63)=0 ) * ( $H$3:$H$63 <> 0 ) , 0 ) ))
>
>Kesimpulannya :
>Pengubahan formula karena adanya perubahan kondisi (bertambah atau berkurang jumlah kondisinya), difokuskan pada penyusunan kondisi-kondisi baru yang menyertakan kondisi awal (sebelum berubah) secara konsisten. Seperti kondisi bahwa jika CountIF 0 artinya sebagai data baru bergabung bersama kondisi baru berupa ada data di suatu area (dengan Len misalnya).
>
>Wassalam,
>Kid.
>
>
>
>
>2012/10/18 M.Ade Alfarid <QA@kkmi.co.id>
>
>Dear,
>>
>>
>>Untuk menghilangkan angka 0 pada list index,
>>tambah rumus apa?
>>
>>Ade
>>
>>
>>
>>
>>On Mon, 15 Oct 2012 16:30:55 +0700, Mr. Kid <mr.nmkid@gmail.com> wrote:
>>
>>
>>> Coba file terlampir.
>>> Ada yang dibantu oleh sebuah kolom untuk menyusun data multi kolom
>>> menjadi
>>> data sekolom.
>>>
>>> Wassalam,
>>> Kid
>>>
>>>
>>> 2012/10/15 M.Ade Alfarid <QA@kkmi.co.id>
>>>
>>>> **
>>
>>>>
>>>>
>>>> BeExceller,
>>>>
>>>> Bagaimana untuk mengurut banyak data beberapa kolom,
>>>> data dobel dihitung sekali saja?
>>>> Terimakasih
>>>> --
>>>> ade
>>>>
>>
>
>
>
>
>
>
>

Fri Nov 23, 2012 2:20 am (PST) . Posted by:

"lkm jktind" lkmjkt

yg warna merah di ganti dengan warna biru .

kalau pakai excel 2007 : Range("AE5",
Range("AE1000000").End(xlup)).ClearContents

,bagian mana kah yg menyatakan baris kosong tetap dilanjutkan:
brsakh = Range("W65000").End(xlUp).Row
Set Rng = Range("W5" & ":W" & brsakh)
Range("AE5", Range("AE5").End(xlDown)).ClearContents
Range("AE5", Range("AE65000").End(xlup)).ClearContents
For Each r In Rng
If r <> "" Then
Set hsl = Range("AE5").CurrentRegion
If WorksheetFunction.CountIf(hsl, r) = 0 Then
brshsl = brshsl + 1
Range("AE" & brshsl) = r
End If
End If
Next r
Cancel = True

salam

Lukman

2012/11/23 Winda Miranti <winda_1504@yahoo.co.id>

> **
>
>
> Mas Hendrik maaf saya mau bertanya lagi,kalo terdapat baris yg
> kosong,baris selanjutnya itu tidak terbaca
> bgmnkah kalimat VB nya?
>
> dan di rumus yg mas hendrik berikan pertama kali kl ada baris yg kosong
> masi tetap akan terbaca,bagian mana kah yg menyatakan baris kosong tetap
> dilanjutkan:
> brsakh = Range("W65000").End(xlUp).Row
> Set Rng = Range("W5" & ":W" & brsakh)
> Range("AE5", Range("AE5").End(xlDown)).ClearContents
> For Each r In Rng
> If r <> "" Then
> Set hsl = Range("AE5").CurrentRegion
> If WorksheetFunction.CountIf(hsl, r) = 0 Then
> brshsl = brshsl + 1
> Range("AE" & brshsl) = r
> End If
> End If
> Next r
> Cancel = True
>
> berikut saya lampir kan excelnya
> Trimaksi :)
> ------------------------------
> *Dari:* Winda Miranti <winda_1504@yahoo.co.id>
> *Kepada:* "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
> *Dikirim:* Jumat, 23 November 2012 13:51
> *Judul:* Bls: Bls: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom
> atau Lebih
>
>
> trimakasi mas Hendrik akan saya coba terlebih dahulu :D
>
> Regards,
> Winda
>
> ------------------------------
> *Dari:* hendrik karnadi <hendrikkarnadi@yahoo.com>
> *Kepada:* "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
> *Dikirim:* Jumat, 23 November 2012 13:19
> *Judul:* Re: Bls: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom
> atau Lebih
>
>
> Yang diganti yang diberi huruf tebal,
> ActiveCell.Offset(0, 2).FormulaR1C1 = "=TEXT(RC[-2],""dd/mm/yy"")"
> jika sheetnya sama.
>
> Salam.
> Hendrik Karnadi
>
> ------------------------------
> *From:* Winda Miranti <winda_1504@yahoo.co.id>
> *To:* "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
> *Sent:* Friday, 23 November 2012, 11:59
> *Subject:* Bls: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau
> Lebih
>
>
> Trimakasi atas solusi nya mas Hendrik,
> brarti nanti kalo saya mau menggunakan cara yg sama dengan rumus yg
> berbeda saya ganti bagian =TEXT(RC[-2],""dd/mm/yy"")" saja yg disesuaikan
> dengan rumus yg akan dipake?
>
> Regards,
> Winda
>
>
> ------------------------------
> *Dari:* hendrik karnadi <hendrikkarnadi@yahoo.com>
> *Kepada:* "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
> *Dikirim:* Jumat, 23 November 2012 9:39
> *Judul:* Re: Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau
> Lebih
>
>
> Coba copy paste macro ini ke module1,
> Sub Tes()
> Dim Rng As Range
> Dim i As Long
> Application.ScreenUpdating = False
> Application.EnableEvents = False
> Sheets("Pertanyaan 2").Select
> Range("A2").Select
> Set Rng = Range("A2", Range("A2").End(xlDown))
> For i = 1 To Rng.Rows.Count
> ActiveCell.Offset(0, 2).FormulaR1C1 = "=TEXT(RC[-2],""dd/mm/yy"")"
> ActiveCell.Offset(1, 0).Select
> Next i
> Application.ScreenUpdating = True
> Application.EnableEvents = True
> End Sub
>
> Hasilnya seperti file terlampir (macro diattached ke tombol "FILTER")
>
> Salam,
> Hendrik Karnadi
>
> ------------------------------
> *From:* Winda Miranti <winda_1504@yahoo.co.id>
> *To:* "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
> *Sent:* Friday, 23 November 2012, 8:37
> *Subject:* Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih
>
>
> Dear Master Excel,
>
> Melanjutkan pembahasan yang lama, ada yang mau saya tanyakan lagi :D
> Saya menemukan kendala ketika data yang digunakan itu menggunakan row yg
> sangat banyak
> Apakah ada cara utk mengefektifkan kerja makro sehingga kinerjanya menjadi
> lebih cepat?
>
> Kemudian saya sudah mencoba utk menggunakan jurus dari Mas Aji utk
> menemukan baris paling akir
> dan sudah coba utk mengotak atik rumus dari mas Hendrik juga utk menemukan
> baris trakirnya, tapi masi blm bisa
> Maklum masi dalam tahap mempelajari makro :D
>
> Mohon pencerahanya para master excel :)
> Berikut saya lampirkan data excelnya
>
> Regards,
> Winda
>
>
> ------------------------------
> *Dari:* Winda Miranti <winda_1504@yahoo.co.id>
> *Kepada:* "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
> *Dikirim:* Jumat, 19 Oktober 2012 13:42
> *Judul:* Bls: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih
>
>
> Trimakasi master excel atas pencerahanya, akan saya pelajari terlebih
> dahulu :D
>
> Regards,
> Winda
>
> ------------------------------
> *Dari:* hendrik karnadi <hendrikkarnadi@yahoo.com>
> *Kepada:* "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
> *Dikirim:* Jumat, 19 Oktober 2012 11:50
> *Judul:* Fw: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih
>
>
> Terima kasih Mas Aji atas tambahan ilmunya.
>
> Salam,
> Hendrik Karnadi
>
> ----- Forwarded Message -----
> *From:* aji mumpung <pupung1986@gmail.com>
> *To:* belajar-excel@yahoogroups.com
> *Sent:* Friday, 19 October 2012, 11:05
> *Subject:* Re: Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih
>
>
> ikutan ya.. biar rame hehehe..
>
> cara lain untuk menemukan baris paling akhir adalah menggunakan kode
> berikut
>
> Cells.SpecialCells(xlCellTypeLastCell).Row
>
> hasilnya disimpan dalam sebuah variabel yang seharusnya sudah
> dideklarasikan di awal
> jadi jika dalam range data terdapat beberapa baris kosing, masih bisa
> terdeteksi dalam looping For - Next
>
> hal ini juga akan memperpendek waktu proses & mengurangi beban kerja macro
> yang hanya akan memproses dari baris data awal sampai dengan baris data
> akhir.. selain itu tidak perlu dilakukan pengecekan
>
> cmiiw (kata mbak'e Colek Me If Im Wrong)
>
> wassalam,
>
> -aji mumpung-
>
> Pada 19 Oktober 2012 10:56, hendrik karnadi <hendrikkarnadi@yahoo.com>menulis:
>
> **
>
> Dear Winda,
>
> Mengapa yang dibold tidak terbaca?
> Karena disamping baris kosong pertama pada kolom B masih ada data (masih
> termasuk lingkup CurrentRegion), sedangkan disamping baris kosong kedua
> pada kolom B tidak ada data jadi tidak ikut terambil.
>
> Untuk itu perlu sedikit akal untuk menentukan baris akhir yang ada isinya.
>
> Coba lihat macro yang sudah diupdate untuk mengambil baris terakhir yang
> ada isinya.
>
> Salam,
> Hendrik Karnadi
>
>
> ------------------------------
> *From:* Winda Miranti <winda_1504@yahoo.co.id>
> *To:* "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
> *Sent:* Friday, 19 October 2012, 9:46
> *Subject:* Bls: [belajar-excel] Index Data Beberapa Kolom atau Lebih
>
>
> Dear Mas Hendrik,
>
> Trimakasi sekali solusi nya mas hendrik kebenaran saya juga lagi menemukan
> kasus yang sama
> tapi hanya ingin sebatas per kolom saja misalnya hanya kolom B, saya coba
> otak atik tapi debug selalu hehe, bgmn cara membatasinya biar hanya membaca
> satu kolom saja?
> dan saya coba tambahkan data kebawah seperti data telampir, tetapi jika
> ada baris yg kosong dua kali, data setelah baris kosong yg kedua tersebut
> tidak terbaca
> Mohon pencerahanya mas hendrik :D
>
> Regards,
> Winda
>
>
> ------------------------------
> *Dari:* hendrik karnadi <hendrikkarnadi@yahoo.com>
> *Kepada:* "belajar-excel@yahoogroups.com" <belajar-excel@yahoogroups.com>
> *Dikirim:* Jumat, 19 Oktober 2012 6:05
> *Judul:* Fw: [belajar-excel] Index Data Beberapa Kolom atau Lebih
>
>
> Sekedar selingan, pake macro.
>
> Salam,
> Hendrik Karnadi
>
> ----- Forwarded Message -----
> *From:* Mr. Kid <mr.nmkid@gmail.com>
> *To:* belajar-excel@yahoogroups.com
> *Sent:* Thursday, 18 October 2012, 23:47
> *Subject:* Re: [belajar-excel] Index Data Beberapa Kolom atau Lebih
>
>
> 1. Untuk cara 2, ada array formula bantu berbunyi : (cell M3)
> =MIN(IF(COUNTIF(N$2:N2,$B$3:$F$14)=0
> ,ROW($B$3:$F$14)*1000+COLUMN($B$3:$F$14)))
> Kondisi yang ada baru 1, yaitu bagian CountIF. Belum ada pengkondisian
> berdasar ada atau tidaknya teks dalam data.
> Pengkondisian untuk mengambil cell yang ada datanya saja adalah dengan
> memeriksa jumlah karakter yang ada di dalam cell tersebut.
> ( Len($B$3:$F$14) > 0 )
>
> Jadi, 2 kondisi yang harus digunakan adalah :
> >> ( COUNTIF(N$2:N2,$B$3:$F$14)=0 )
> >> ( Len($B$3:$F$14) > 0 )
> Keduanya harus terpenuhi, artinya harus dihubungkan dengan operator AND
> yang setara dengan kegiatan operasi matematis perkalian.
> Jadi kedua kondisi akan diekspresikan menjadi :
> ( COUNTIF(N$2:N2,$B$3:$F$14)=0 )*( Len($B$3:$F$14) > 0 )
>
> Maka bagian CountIF dalam array formula diganti dengan 2 pengkondisian
> baru ini akan menjadi :
> =MIN(IF( ( COUNTIF(N$2:N2,$B$3:$F$14)=0 )*( Len($B$3:$F$14) > 0 )
> ,ROW($B$3:$F$14)*1000+COLUMN($B$3:$F$14)))
> >> Jangan lupa untuk di-Enter sebagai Array formula dengan CTRL SHIFT
> ENTER <<
>
> 2. Menghitung jumlah unique item (seperti cell H2 atau M2)
> Formula yang ada :
> =SUMPRODUCT(1/COUNTIF(B3:F14,B3:F14))
> Ketika ada cell di B3:F14 yang tidak ada datanya, maka akan menghasilkan
> hasil countif akan 0. Maka akan ada item yang kalkulasinya berupa 1/0yang menghasilkan error value #DIV
> /0!
> Maka efek ketika hasil CountIF adalah 0 harus dinetralisir dengan suatu
> nilai yang bukan 0. CountIF menghasilkan 0 jika tidak ada data, maka
> kondisi tidak ada data bisa diubah hasilnya menjadi 1 yang setara TRUE. Maka
> Len(B3:F14)=0 akan bernilai TRUE ketika B3:F14 tidak ada datanya. Bunyi
> kondisi terhadap CountIF adalah sebagai berikut :
> >> Jika hasil CountIF adalah 0, maka isi dengan Len(B3:F14)=0
> >> Jika hasil CountIF bukan 0, maka isi dengan hasil CountIF
> Secara harfiah, translatenya ke bahasa formula menjadi :
> IF( COUNTIF(B3:F14,B3:F14) = 0 , ( Len(B3:F14)=0 ) , COUNTIF(B3:F14,B3:F14)
> )
> Dari kalimat ini, sebenarnya jika diperhatikan secara seksama, akan ada
> benang merah berbunyi :
> "Nilai hasil CountIF atau Len(B3:F14)=0"
> yang bahasa formulanya :
> ( COUNTIF(B3:F14,B3:F14) + ( Len(B3:F14)=0 ) )
> Hasilnya, akan didapat bahwa seluruh cell yang tidak ada isinya akan
> bernilai TRUE (setara 1).
> Maka, 1/COUNTIF(B3:F14,B3:F14)
> akan menjadi :
> 1/( COUNTIF(B3:F14,B3:F14) + ( Len(B3:F14)=0 ) )
> *tetapi*, akan terjadi 1/1 ketika cell tidak ada isinya, karena 1/( 0 +
> TRUE ) = 1/( 0 + 1 ) = 1/1
> Hal ini akan menghasilkan jumlah unique yang tidak tepat. Oleh sebab itu
> bagian 1 (biru) dalam :
> 1/( COUNTIF(B3:F14,B3:F14) + ( Len(B3:F14)=0 ) )
> harus berupa pemfilteran bahwa jika cell berisi data maka bernilai 1 dan
> jika tidak berisi data bernilai 0.
> ( Len(B3:F14)>0 )
> Maka formula lengkap :
> =SUMPRODUCT( ( Len(****B3:F14)>0 ) / ( COUNTIF(B3:F14,B3:F14) + ( Len(
> B3:F14)=0 ) ) )
>
> 3. Cara1.
> untuk versi xl2007 (dengan IFError) array formulanya (J3)
> =IFERROR(INDEX($H$3:$H$63,MATCH(0,COUNTIF(J$2:J2,$H$3:$H$63),0)),"")
> untuk semua versi (berdasar jumlah item unique yang mungkin) : (K3)
> =IF(ROW()-2>$H$2,"",INDEX($H$3:$H$63,MATCH(0,COUNTIF(K$2:K2,$H$3:$H$63),0)
> ))
> memiliki benang merah pada bagian yang biru :
> MATCH(0,COUNTIF(K$2:K2,$H$3:$H$63),0)
> Bahasa manusianya :
> "Cari posisi angka 0 pada suatu data array yang berupa nilai-nilai jumlah
> cacah (CountIF) data dalam $H$3:$H$63 di suatu area K$2:K2 yang
> pencariannya harus bener-bener persis [0]"
> Kalimat 'nilai-nilai jumlah cacah data dalam $H$3:$H$63 di suatu area
> K$2:K2' akan menghasilkan angka bukan 0 jika memang telah ada di K$2:K2dan menghasilkan 0 jika belum ada di
> K$2:K2. Padahal area K$2:K2 adalah hasil (output). Artinya, kalau sampai
> hasil CountIF adalah 0, maka data itu belum ada di area output alias data
> baru. Dengan demikian, fungsi Match tugasnya adalah selalu mendapatkan
> posisi data baru (data yang belum ada di output).
> Pada kondisi itu, tidak ada pengkondisian bahwa data di $H$3:$H$63
> bukanlah bernilai 0.
> Jelas sudah diketahui bahwa data baru (belum ada di output) adalah yang
> COUNTIF(K$2:K2,$H$3:$H$63)=0
> Kondisi data di $H$3:$H$63 bukanlah bernilai 0 dapat diekspresikan
> sebagai :
> ( $H$3:$H$63 <> 0 )
>
> Sampai disini, sudah ada 2 kondisi :
> 1. data baru (belum ada dioutput) :
> ( COUNTIF(K$2:K2,$H$3:$H$63)=0 )
> 2. tidak adanya nilai di data $H$3:$H$63
> ( $H$3:$H$63 <> 0 )
> Keduanya harus terpenuhi berarti setara AND yang setara perkalian.
> Maka array data dalam Match akan berupa :
> *( COUNTIF(K$2:K2,$H$3:$H$63)=0 ) * ( **$H$3:$H$63 <> 0 )*
> Hasilnya adalah *1* (untuk data baru *dan* nilai data di $H$3:$H$63 bukanlah
> 0 ) atau 0 (untuk salah satu dari kedua kondisi yang tak terpenuhi).
> Jadi, yang menjadi lookup value (dicari oleh match) bukan lagi angka 0,
> melainkan angka *1*
> Nah... bagian Match akan menjadi :
> MATCH(* 1 *, *( COUNTIF(K$2:K2,$H$3:$H$63)=0 ) * ( **$H$3:$H$63 <> 0 )* ,
> 0 )
>
> Array formula lengkap masing-masing :
> 1. untuk versi xl2007 :
> =IFERROR(INDEX($H$3:$H$63, MATCH(* 1 *, *( COUNTIF(K$2:K2,$H$3:$H$63)=0 )
> * ( **$H$3:$H$63 <> 0 )* , 0 ) ),"")
>
> 2. untuk semua versi :
> =IF(ROW()-2>$H$2,"",INDEX($H$3:$H$63, MATCH(* 1 *, *( COUNTIF(K$2:K2,$H$3:$H$63)=0
> ) * ( **$H$3:$H$63 <> 0 )* , 0 ) ))
>
> Kesimpulannya :
> Pengubahan formula karena adanya perubahan kondisi (bertambah atau
> berkurang jumlah kondisinya), difokuskan pada penyusunan kondisi-kondisi
> baru yang menyertakan kondisi awal (sebelum berubah) secara konsisten.
> Seperti kondisi bahwa jika CountIF 0 artinya sebagai data baru bergabung
> bersama kondisi baru berupa ada data di suatu area (dengan Len misalnya).
>
> Wassalam,
> Kid.
>
>
>
> 2012/10/18 M.Ade Alfarid <QA@kkmi.co.id>
>
> **
> Dear,
>
> Untuk menghilangkan angka 0 pada list index,
> tambah rumus apa?
>
> Ade
>
>
>
>
> On Mon, 15 Oct 2012 16:30:55 +0700, Mr. Kid <mr.nmkid@gmail.com> wrote:
>
> > Coba file terlampir.
> > Ada yang dibantu oleh sebuah kolom untuk menyusun data multi kolom
> > menjadi
> > data sekolom.
> >
> > Wassalam,
> > Kid
> >
> >
> > 2012/10/15 M.Ade Alfarid <QA@kkmi.co.id>
> >
> >> **
>
> >>
> >>
> >> BeExceller,
> >>
> >> Bagaimana untuk mengurut banyak data beberapa kolom,
> >> data dobel dihitung sekali saja?
> >> Terimakasih
> >> --
> >> ade
> >>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>

Thu Nov 22, 2012 11:24 pm (PST) . Posted by:

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

Pak Andre,

>> "bisa bapak contohkan ga ke file yang saya kirim karena"
Oh tentu bisa. Sayangnya harus menunggu sampai saya bisa buka Excel
(apalagi yang pakai VBA).

>> "udah saya beberapakali gagal terus hasilnya.."
Kok gak disertakan hasil uji coba pindahkan formula dari cell ke VBA-nya.
Seepertinya Bapak juga kurang semangat membaca tulisan pada email lalu yang
bunyinya :
"Untuk data bertipe text. Misal fixedlength 45 char (ketika dituangkan ke
dalam VBA,* setiap karakter *data text petik dua (") harus menjadi 2 buah
petik dua ("") )"

>> "saya baru pertama kali menggunakan macro."
- Cara ke VBA (dari worksheet ke VBA) : tekan ALT F11
- Cara mencari baris script bertuliskan 'sFormula ='
> ke VBA lebih dulu (lihat cara ke VBA)
> lakukan Find dengan tekan CTRL F
> pada bagian Find : ketika sFormula
> tekan Find atau Find Next
- Cara simpan VBA (macro)
> kembali ke worksheet ( tekan ALT F11 )
> lakukan save as ( tekan ALT F A )
> tulis nama file (hilangkan .xlsx)
> pada opsi Save As Type pilih item Excel Macro Enable (.xlsm)
> tekan Save

*Tentang formula gabung teks (concatenate) :
*1. Misal : Ada data di cell B1 bernilai 111
Ingin dihasilkan fixedlength text dari nilai data bertipe numerik itu pada
suatu cell, dengan jumlah digit tetap yaitu 9, maka formulanya :
*=Text( B1 , "000000000" )*

2. Sekarang datanya ada yang di C1 bernilai 222 dan ingin disambungkan ke
hasil nomor1 di atas. C1 juga harus fixedlength 9 digit.
>> Formula untuk membuat C1 berupa teks angka 9 digit :
*Text( C1 , "000000000" )*
>> operator untuk menggabungkan data bertipe teks adalah ampersand atau
sering disebut karakter '*&*'
>> jadi formula nomor 1 akan berubah menjadi :
*=Text( B1 , "000000000" ) & Text( C1 , "000000000" )*

3. Bertambah lagi ada data di D1 bernilai 333 dan tampil 9 digit menyambung
hasil nomor 2
>> Formula untuk membuat D1 berupa 9 digit :
*Text( D1 , "000000000" )*
>> operator untuk menggabungkan data bertipe teks adalah ampersand atau
sering disebut karakter '*&*'
>> jadi formula nomor 1 akan berubah menjadi :
*=Text( B1 , "000000000" ) & Text( C1 , "000000000" )* *& **Text( D1 ,
"000000000" )*

Sampai disini, jika formula akhir di nomor 3 dipasang di cell L1, maka L1
akan menghasilkan nilai bertipe text :
000000111000000222000000333

*Karena pengen belajar VBA*, maka formula tersebut ingin dipasang dengan
VBA. Untung ada yang bersedia menyediakan ruang penyimpanan formula bernama
:
sFormula
Jadi formula di L1 itu akan ditulis di VBA masuk ke sFormula. Langkahnya :
1. susun script set nilai ke variabel secara umum :
sFormula = "formulaku"

2. Ganti teks formulaku pada script nomor 1 dengan bunyi formula yang sudah
disusun tadi (ada di L1)
sFormula = "*=Text( B1 , "000000000" ) & Text( C1 , "000000000" )* *& **Text(
D1 , "000000000" )*"

3. ingat-ingat pesen Kid yang bunyinya :
(ketika dituangkan ke dalam VBA,* setiap karakter *data text petik dua (")
harus menjadi 2 buah petik dua ("") )
maka script isi variabel sFormula di nomor 2 menjadi :
sFormula = "*=Text( B1 , ""000000000"" ) & Text( C1 , ""000000000"" )*
*& **Text(
D1 , ""000000000"" )*"

*Sekarang pengen gabung dengan nilai data bertipe text.
*1. Ada data di A1 yang bernilai (tipe text) 'Aku' dan akan disambungkan
dengan formula L1, tetapi diletakkan sebelum nilai-nilai hasil L1 (artinya
dikiri formula L1).
>> Karena ingin apa adanya, maka formula L1 yang berbunyi :
*=Text( B1 , "000000000" ) & Text( C1 , "000000000" )* *& **Text( D1 ,
"000000000" )*
berubah menjadi :
*=*A1* **& Text( B1 , "000000000" ) & Text( C1 , "000000000" )* *& **Text(
D1 , "000000000" )*
yang akan menghasilkan :
Aku000000111000000222000000333

2. Akan digabung dengan nilai cell E1 yang bertipe teks berbunyi 'Coba'.
Tapi E1 harus ditampilkan fixedlength sebanyak 7 karakter dan spasi harus
diletakkan sebelum nilai data E1 (artinya dikiri data). E1 digabungkan
dengan hasil nomor 1, tapi diletakkan sebelum angka-angkanya C1.
>> Formula membuat fixedlength *7* karakter *sebelum *nilai data E1
*Right( Rept( " " , 7 ) & E1 , 7 )*
>> Posisi dalam formula adalah sebelum angka yang berasal dari cell C1,
berarti sebelum bagian formula berbunyi :
*& Text( C1 , "000000000" )*
>> Operator penghubungnya adalah ampersand ('*&*')
>> Formula pembuat fixedlength cell E1 akan menjadi :
*&* * Right( Rept( " " , 7 ) & E1 , 7 )*
>> formula akhir nomor 1 menjadi :
*=*A1* **& Text( B1 , "000000000" ) **& Right( Rept( " " , 7 ) & E1 ,
7 )& Text(
C1 , "000000000" )* *& **Text( D1 , "000000000" )*

Sampai disini, hasil formula di L1 akan menghasilkan nilai data bertipe
text :
Aku000000111 Coba000000222000000333

3. Di F1, ada data text lagi berbunyi 'Sendiri' yang ingin digabung dengan
hasil nomor 2 fixedlength 15 char setelah nilai data F1. Teks di F1 ini
akan diletakkan sebelum angka-angka dari cell D1.
>> Formula membuat fixedlength *15* karakter *setelah *nilai data F1
*Left( F1 & Rept( " " , 15 ) , 15 )*
>> Posisi dalam formula adalah sebelum angka yang berasal dari cell D1,
berarti sebelum bagian formula berbunyi :
* & **Text( D1 , "000000000"*
>> Operator penghubungnya adalah ampersand ('*&*')
>> Formula pembuat fixedlength cell F1 akan menjadi :
*&* *Left( F1 & Rept( " " , 15 ) , 15 )*
>> formula akhir nomor 2 menjadi :
*=*A1* **& Text( B1 , "000000000" ) **& Right( Rept( " " , 7 ) & E1 ,
7 )& Text(
C1 , "000000000" )* *&* *Left( F1 & Rept( " " , 15 ) , 15 )* *& **Text(
D1 , "000000000" )*

Sampai disini, hasil formula di L1 akan menghasilkan nilai data bertipe
text :
Aku000000111 Coba000000222Sendiri 000000333

*Sekarang pengen gabung dengan nilai data bertipe datetime.*
1. Pada cell H1 ada data bertipe date berformat DD-MMM-YYYY bernilai
23-Nov-2012. Ingin digabung ke hasil terakhir L1, dan diletakkan sebelum
teks yang berasal dari cell A1. Format penulisannya adalah YYYYMMDD. Jadi
nanti akan ada nilai 20121123 sebelum teks data yang berasal dari cell A1
pada hasil formula di L1.
>> Formula membuat format YYYYMMDD
*Text( H1 , "YYYYMMDD" )*
>> digabung dengan formula yang ada di L1, maka operator penggabungnya
adalah *&*
>> diletakkan sebelum nilai data dari cell A1, maka formula utuhnya menjadi
:
*=**Text( H1 , "YYYYMMDD" )* *&* A1* **& Text( B1 , "000000000" ) **& Right(
Rept( " " , 7 ) & E1 , 7 ) & Text( C1 , "000000000" )* *&* *Left(
F1 & Rept( " " , 15 ) , 15 )* *& **Text( D1 , "000000000" )*

2. Pada cell i1 ada data waktu bertipe datetime dengan nilai 9:03 AM dan
harus fixed length berdasar format waktu HH:mm:ss. Diletakkan setelah angka
dari cell D1.
>> Formula membuat format HH:mm:ss
Text( i1 , "HH:mm:ss" )
>> operator penghubung : *&*
>> diletakkan setelah angka dari cell D1, maka formula utuh nomor 1 manjadi
:
*=**Text( H1 , "YYYYMMDD" )* *&* A1* **& Text( B1 , "000000000" ) **& Right(
Rept( " " , 7 ) & E1 , 7 ) & Text( C1 , "000000000" )* *&* *Left(
F1 & Rept( " " , 15 ) , 15 )* *& **Text( D1 , "000000000" )* *& *Text( i1
, "HH:mm:ss" )

Hasil di L1 adalah :
20121123Aku000000111 Coba000000222Sendiri 00000033309:03:00

*Lalu mau dipasang pakai VBA juga. Maka sFormula yang sudah ada harus
diganti menjadi formula hasil nomor 2 tadi.*
1. Susunan umum :
sFormula="formulaku"

2. masukkan formula dari worksheet menggantikan teks 'formulaku'
sFormula="*=**Text( H1 , "YYYYMMDD" )* *&* A1* **& Text( B1 ,
"000000000" ) **& Right( Rept( " " , 7 ) & E1 , 7 ) & Text( C1 ,
"000000000" )* *&* *Left( F1 & Rept( " " , 15 ) , 15 )* *& **Text(
D1 , "000000000" )* *& *Text( i1 , "HH:mm:ss" )"

3. Ganti semua karakter " dalam formula menjadi ""
sFormula="*=**Text( H1 , **""YYYYMMDD**"" )* *&* A1* **& Text( B1 , **""
000000000**"" ) **& Right( Rept( **"" **"" , 7 ) & E1 , 7 ) & Text(
C1 , **""000000000**"" )* *&* *Left( F1 & Rept( **"" **"" , 15 ) , 15 )* *&
**Text( D1 , **""000000000**"" )* *& *Text( i1 , ""HH:mm:ss"" )"

Wassalam,
Kid.

2012/11/23 Andre Rahmaidy Teeza <andre_teeza_bn@yahoo.com>

> **
>
>
> Pak Kid
>
> terima kasih sebelumnya dari petunjuk tadi rumus yang akan dituangkan ke
> vbanya kalau nilai data harus pakai space setelah nilai data bisa bapak
> contohkan ga ke file yang saya kirim karena udah saya beberapakali gagal
> terus hasilnya.. maaf sebelumny pak karena saya baru pertama kali
> menggunakan macro.
>
> ------------------------------
> *From:* Mr. Kid <mr.nmkid@gmail.com>
> *To:* belajar-excel@yahoogroups.com
> *Sent:* Friday, November 23, 2012 10:58 AM
> *Subject:* Re: [belajar-excel] Part II Excel ke Text File : FixedLength
>
>
> Pak Andre,
>
> Untuk data bertipe text. Misal fixedlength 45 char (ketika dituangkan ke
> dalam VBA,* setiap karakter *data text petik dua (") harus menjadi 2 buah
> petik dua ("")
> 1. space sebelum nilai data :
> right( rept(" ",45) & nilai_datanya , 45 )
>
> 2. space setelah nilai data :
> left( nilai_datanya & rept(" ",45) , 45 )
>
> Wassalam,
> Kid.
>
>
>
>
>

Thu Nov 22, 2012 11:44 pm (PST) . Posted by:

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

Wa'alaikumussalam Wr. Wb.

Biasanya error trap yang sudah jelas posisinya diberi peng-handle pesannya.
Jadi memang harus paham apakah baris tersebut berpotensi error atau tidak.
Contoh :
Public Sub CobaErrTrapSederhana(lNilai as long, rngData as range)
Dim l As Long
Dim sMsg As String

On Error Resume Next
l = 1 / lNilai 'berpotensi error, ketika input lNilai adalah 0
sMsg = sMsg & Now & vbTab & Err.Number & vbTab & Err.Description &
vbCrLf

l = 2

l = 2 / 2 * rng.value 'berpotensi error, ketika rng berisi string
atau ada banyak cell dalam rng
sMsg = sMsg & Now & vbTab & Err.Number & vbTab & Err.Description &
vbCrLf

MsgBox sMsg
Err.Clear
End Sub

Wassalamu'alaikum Wr. Wb.
Kid.

2012/11/23 him mah <himmah.mlg@gmail.com>

> **
>
>
> Assalamu'alaikum Wr. Wb.
>
> ketika kita membuat perintah menggunakan VBA atau makro maka sering
> kita mengalami error, bisa ngga ya semua error itu ditampung terlebih
> dahulu sampai semua prosedur dijalankan sampai akhir. Nah ketika
> emang dalam proses tersebut terjadi error bisa 1 atau lebih, maka
> error tersebut akan ditampilkan dalam sheet tertentu lengkap dengan
> waktu kejadiannya misal saja sheet "ERROR". kira-kira kalau seperti
> itu bagaimana VBA nya
>
> terima kasih
>
>

Thu Nov 22, 2012 11:47 pm (PST) . Posted by:

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

ups koreksi pada baris :
l = 2 / 2 * rng.value 'berpotensi error, ketika rng berisi string
atau ada banyak cell dalam rng
menjadi :
'berpotensi error, ketika rng berisi string, ada banyak cell dalam
rngData
l = 2 / 2 * rngData.value

Wassalamu'alaikum Wr. Wb.
Kid.

2012/11/23 Mr. Kid <mr.nmkid@gmail.com>

> Wa'alaikumussalam Wr. Wb.
>
> Biasanya error trap yang sudah jelas posisinya diberi peng-handle
> pesannya. Jadi memang harus paham apakah baris tersebut berpotensi error
> atau tidak.
> Contoh :
> Public Sub CobaErrTrapSederhana(lNilai as long, rngData as range)
> Dim l As Long
> Dim sMsg As String
>
> On Error Resume Next
> l = 1 / lNilai 'berpotensi error, ketika input lNilai adalah 0
> sMsg = sMsg & Now & vbTab & Err.Number & vbTab & Err.Description &
> vbCrLf
>
> l = 2
>
> l = 2 / 2 * rng.value 'berpotensi error, ketika rng berisi string
> atau ada banyak cell dalam rng
> sMsg = sMsg & Now & vbTab & Err.Number & vbTab & Err.Description &
> vbCrLf
>
> MsgBox sMsg
> Err.Clear
> End Sub
>
> Wassalamu'alaikum Wr. Wb.
> Kid.
>
>
> 2012/11/23 him mah <himmah.mlg@gmail.com>
>
>> **
>>
>>
>> Assalamu'alaikum Wr. Wb.
>>
>> ketika kita membuat perintah menggunakan VBA atau makro maka sering
>> kita mengalami error, bisa ngga ya semua error itu ditampung terlebih
>> dahulu sampai semua prosedur dijalankan sampai akhir. Nah ketika
>> emang dalam proses tersebut terjadi error bisa 1 atau lebih, maka
>> error tersebut akan ditampilkan dalam sheet tertentu lengkap dengan
>> waktu kejadiannya misal saja sheet "ERROR". kira-kira kalau seperti
>> itu bagaimana VBA nya
>>
>> terima kasih
>>
>>
>
>

Fri Nov 23, 2012 1:37 am (PST) . Posted by:

"jonson dahrino" jonson_ringo

Dear master excel,
saya sudah hampir nyerah nih dengan kasusu in (heheheheh.....)
mohon bantuannya ya..
 
pada intinya adalh perhitungan bonus dengan berbagai kriteria dan level pencapaiannya
 
aturannya ada di sheet scheme dan bonusnya dihitung progresif
 
saya lampirkan filenya juga :

Fri Nov 23, 2012 12:13 am (PST) . Posted by:

"Emi" emilestariklcc

 
Gurudan teman BeExcel,
Data di sheet ini adalah hasil input manual di sheet "InputArea"
Saya mau mempelajari bagaimana  menulis makro sebagai ganti kepada formula .
Artinya semua formula di sheet ini ditulis di VBE dan bukan di sheet ini.
Terima kasih
-Emi Lestari

Fri Nov 23, 2012 12:37 am (PST) . Posted by:

"Prodev SIMPLE PB" prodev_simple

Assalamu'alaikum Wr. Wb.

Para Guru Besar yang terhormat.
Mohon pencerahan dan solusi untuk kasus penempatan data pada kolom secara otomatis.
Contoh kasus terlampir.
Atas perhatian dan solusinya diucapkan terima kasih.

Wassalam.

 
- prodev simple -

Fri Nov 23, 2012 1:43 am (PST) . Posted by:

"Teti Zhe" teti_zhe

Dear miss Jan
Makasih untuk solusi nya,, tapi ada yang lupa saya beritahu,, kalo misalnya filter nya ditambah yang DO, tidak sekolah dan tamat tetapi juga hanya yang berumur hingga 14 tahun ?
tapi yang ini sudah sangat membantu saya.. :) Thanks..
 
Salam,
Teti.

________________________________
From: Jan Raisin <miss.jan.raisin@gmail.com>
To: belajar-excel@yahoogroups.com
Sent: Thursday, November 22, 2012 9:28 AM
Subject: Re: [belajar-excel] Cara Filter Data ke Sheet yang lain berdasar kriteria


 
Dear ibu Teti,

Jan tidak tau apakah solusi yang diinginkan oleh ibu Teti harus menggunakan formula, macro, atau kombinasi keduanya.
Karena tidak disebutkan harus menggunakan apa, maka kali ini Jan menawarkan solusi menggunakan kombinasi keduanya, karena pada awalnya ibu Teti sudah menggunakan tabel, maka Jan berusaha mengoptimalkan fungsi-fungsi dari tabel tersebut.

Tabel yang ada di sheet ALL, Jan beri nama TabelAll
Tabel yang ada di sheet Selected Awal, Jan beri nama TabelSelected
Tabel yang ada di sheet Pending, Jan beri nama TabelPending

Pada TabelAll, Jan melakukan penambahan 2 buah kolom, yaitu:
1. Kolom J untuk menetukan lokasi sheet untuk melakukan copy paste data
2. Kolom K untuk mengetahui apakah data sudah dicopy ke sheet yang sudah ditentukan atau belum

Pada kolom J menggunakan formula: 
=IF([@Status]="Sekolah","Pending","Selected Awal")

Pada kolom K menggunakan formula:
=IFERROR(IF([@CopyKeSheet]="Selected Awal",MATCH([@Name],TabelSelected[Name],0),MATCH([@Name],TabelPending[Name],0)),"Belum")
jika data belum dicopy ke sheet tujuan, akan muncul keterangan Belum
jika data sudah dicopy ke sheet tujuan akan muncul nomer urut data di sheet tujuan

Untuk melakukan copy paste ke sheet tujuan, Jan menggunakan VBA yang dipanggil melalui sebuah shape, berikut adalah script yang digunakan:

Option Explicit
' ---------------------------------------------------------- '
' Prosedur Copy Paste ke Sheet Tujuan Berdasarkan Kriteria yang Telah Ditentukan '
' Code by: Miss Jan Raisin                                                       '
' Untuk millis Belajar Excel                                                     '
' 22 November 2012                                                               '
' ---------------------------------------------------------- '

' ini adalah nama prosedurnya
Sub CopyToSheet()

    ' deklarasikan variable dengan tipe Range untuk menyimpan objek berupa range
    ' hdNama = header_nama, letaknya di sheet ALL, range B2
    ' rgNama = range_nama, letaknya mulai 1 baris di bawah hdNama sampai dengan baris terakhir yang berisi data
    ' cNama = setiap 1 cell di dalam rgNama
    Dim hdNama, rgNama, cNama As Range
   Â 
    ' deklarasikan variabel dengan tipe String untuk menyimpan nama worksheet
    ' ws = nama_worksheet
    Dim ws As String
   Â 
    ' non-aktifkan aplikasi screen update agar macro dapat berjalan lebih cepat
    Application.ScreenUpdating = False
   Â 
    ' aktifkan sheet ALL
    Sheets("ALL").Select
   Â 
    ' tentukan lokasi variabel hdNama
    ' lokasinya adalah di sheet ALL di cell B2
    Set hdNama = Range("b2")
   Â 
    ' tentukan lokasi variabel rgNama
    ' lokasinya adalah 1 baris di bawah hdNama
    ' untuk menunjuknya gunakan perintah hdNama.Offset(1, 0)
    ' syntax dari OffSet adalah Offset(nomer_baris , nomer_kolom)
    ' jika nomer baris bernilai positif berarti bergerak ke arah bawah, jika negatif berarti bergerak ke atas
    ' jika nomer kolom bernilai positif berarti bergerak ke arah kanan, jika negatif berarti bergerak ke kiri
    ' jika menggunakan keyboard setara dengan menekan tombol panah sebanyak nomer_baris atau nomer_kolom
    ' sampai dengan baris terakhir paling bawah dari hdNama yang ada datanya
    ' untuk menunjuknya gunakan perintah hdNama.End(xlDown)
    ' jika menggunakan keyboard maka akan setara dengan menekan tombol CTRL dan tanda panah bawah
    Set rgNama = Range(hdNama.Offset(1, 0), hdNama.End(xlDown))
   Â 
    ' untuk setiap 1 cell cNama di dalam rgNama
    For Each cNama In rgNama
   Â 
        ' lakukan pengujian apakah data sudah dicopy ke sheet tujuan atau belum
        ' lokasinya adalah 9 kolom (Kolom K) di sebelah kanan dari cNama (Kolom B)
        ' jika nilai kolom tersebut adlah Belum, berarti data belum ada di sheet tujuan
        ' jika nilai kolom tersebut adalah angka, berarti data sudah ada di sheet tujuan
        ' dengan nomer urut sesuai dengan nilai yang tercantum di kolom K
        ' untuk menunjuknya gunakan perintah cNama.Offset(0, 9)
        ' untuk mengambil nilainya gunakan perintah .Value
        ' bahasa manusianya: Jika 9 kolom di sebelah kanan cNama nilainya adalah Belum, maka
        If cNama.Offset(0, 9).Value = "Belum" Then
           Â 
            ' simpan nama worksheet ke dalam variabel ws
            ' nama sheet diambil dari 8 kolom di sebelah kanan dari cNama
            ws = cNama.Offset(0, 8).Value
           Â 
            ' lakukan copy data mulai dari cNama sampai dengan 7 kolom di sebelah kanan cNama
            Range(cNama, cNama.Offset(0, 7)).Copy
           Â 
            ' setelah itu aktifkan worksheet sesuai dengan nama sheet yang sudah disimpan dalam variabel ws
            Sheets(ws).Select
           Â 
            ' pergi ke cell B2
            Range("b2").Select
           Â 
            ' saat ini aktif cell berada di cell B2
            ' lakukan pengujian apakah 1 baris di bawah cell aktif ada datanya atau tidak
            ' bahasa manusianya: jika 1 baris di bawah cell aktif tidak ada datanya, maka
            If ActiveCell.Offset(1, 0).Value = "" Then
           Â 
                ' dari cell aktif turun 1 baris ke bawah
                ' berarti cell aktif saat ini ada di B3
                ActiveCell.Offset(1, 0).Select
               Â 
                ' 1 kolom di sebelah kiri cell aktif diberi nilai 1, karena ini adalah data pertama
                ActiveCell.Offset(0, -1).Value = 1
               Â 
                ' selain itu
                Else
               Â 
                ' kalo sampai di sini berarti pada sheet tujuan sudah ada datanya
                ' dari cell aktif turun ke bawah samapi dengan baris terakhir yang berisi data
                ' gunakan perintah .End(xlDown)
                ' lalu turun lagi 1 baris ke bawah pada baris yang kosong
                ' gunakan perintah .Offset(1, 0)
                ActiveCell.End(xlDown).Offset(1, 0).Select
               Â 
                ' pada 1 kolom disebelah kiri dari cell yang aktif diberi nomer urut
                ' nilainya adalah 1 baris di atas dan 1 kolom di sebelah kiri ditambah dengan nilai 1
                ActiveCell.Offset(0, -1).Value = ActiveCell.Offset(-1, -1).Value + 1
           Â 
            ' ini adalah akhir dari pengujian & penentuan lokasi penulisan data yang baru
            End If
           Â 
            ' pada cell yang aktif, lakukan paste spesial dengan nilai dan format sesuai dengan data asli
            ActiveCell.PasteSpecial xlPasteValuesAndNumberFormats
           Â 
            ' setelah itu matikan mode copy paste
            Application.CutCopyMode = False
       Â 
        ' ini adalah akhir dari pengujian apakah data sudah dicopy ke sheet tujuan atau belum
        End If
       Â 
        ' panggil kembali sheet ALL
        Sheets("ALL").Select
   Â 
    ' lakukan loop untuk cNama berikutnya
    Next cNama
   Â 
    ' aktifkan kembali aplikasi screen update
    Application.ScreenUpdating = True

' ini adalah akhir dari prosedur
End Sub

Untuk lebih jelasnya, silakan lihat langsung ke lampiran

Best Regard,

-Jan Raisin-

Pada 21 November 2012 16:41, Teti Zhe <teti_zhe@yahoo.com> menulis:

> 
>Dear All,
>Mohon bantuannya , saya ada data yang ingin saya filter : 
>
>
>1. Dari sheet1 (sheet ALL) ke sheet2 (sheet SelectedAwal) tapi berdasarkan kriteria pada kolom Status semua yang DO, Tidak Sekolah, dan Tamat . Data-data yang terseleksi sesuai kriteria tersebut dicopy ke sheet2 dengan format tabel seperti pada sheet1... Kemudian data yang masih tinggal, yang tidak memenuhi kriteria (yang pada kolom status adalah Sekolah) akan dicopy pada sheet2 (sheet Pending). <File terlampir : 1.Bgm_Filter_DataSelectedAwal>.
>
>
>
>
>2. Seperti pada lampiran kedua ( File : 2.Bgm_Filter_DataPending) , jika tadi telah ada data yang uda kian dikasi di sheet2 (sheet SelectedAwal) yang tadinya adalah hasil filter sebagian data dari sheet1 (Sheet ALL), nah bagaimana mengetahui data-data yang belum difilter atau data-data yang belum ada pada sheet SelectedAwal? kemudian data-data yang belum termasuk di sheet SelectedAwal tersebut dimasukkan/dicopy pada sheet Pending dan mengikuti format tabel yang ada?
>
>
>Makasih atas bantuan dan pencerahannya....
> 
>Salam,
>Teti.
>

Fri Nov 23, 2012 1:50 am (PST) . Posted by:

"Teti Zhe" teti_zhe

Dear Mr. Kid,
Saran dari Mr.Kid juga sangat membantu, sebagai solusi lain selain macro yang diperkenalkan Ms Jan pada saya.. Dua-dua nya sungguh membantu hehehe.. <dengan ekspresi senang ^^>
Makasih pengenalan tentang pivot tabel.,.teman saya pernah bilang dengan pivot tabel juga bisa menghitung persenan.. kebetulan nih Mr Kid, boleh tolong ajari saya, karena data di tabel All itu nanti nya (juga di tabel2 lainnya) akan saya hitung berapa persen yang DO/Tidak Sekolah/Tamat , dan berapa persen dari kategori tersebut yang Female dan Male, kira2 salah satu kategori seperti itu,,dan masih banyak lagi data yang akan saya ekstrak dari tabel itu untuk laporan tapi musti menggunakan angka persen gitu..nah, saya berharap, Mr.Kid boleh kasi pencerahan dnk... 
Cuma solusi pake pivot tabel, nomer urut nya ga bisa berurutan ya ..??

Thanks,..
 
Salam,
Teti.

________________________________
From: Mr. Kid <mr.nmkid@gmail.com>
To: belajar-excel@yahoogroups.com
Sent: Thursday, November 22, 2012 10:24 AM
Subject: Re: [belajar-excel] Cara Filter Data ke Sheet yang lain berdasar kriteria


 
Hai Teti,

File terlampir memanfaatkan Pivot Table.
Data source dibentuk menjadi sebuah pivot cache.
Sebuah pivot cache bisa digunakan untuk membentuk banyak pivot table.

Pivot table membutuhkan sebuah data source (tabel sumber data yang baik - dalam kasus ini adalah tabel di sheet ALL) yang telah dibentuk menjadi sebuah pivot cache.
Jika ingin membuat banyak pivot table dari sebuah pivot cache, copy pivot table yang sudah jadi dan paste ke sheet lain atau ketempat lain dalam sheet yang sama sesuai kebutuhan.

Hal ini akan membuat proses lebih cepat, karena Excel hanya butuh merefresh 1 (satu) pivot cache yang bersumber dari 1 tabel data source).
Dengan di-refreshnya pivot cache, maka seluruh pivot table yang data sourcenya berasal dari pivot cache tersebut akan melakukan refresh tampilan saja. Sedang seluruh datanya sudah direfresh oleh pivot cache.

Wassalam,
Kid.

2012/11/21 Teti Zhe <teti_zhe@yahoo.com>

> 
>Dear All,
>Mohon bantuannya , saya ada data yang ingin saya filter : 
>
>
>1. Dari sheet1 (sheet ALL) ke sheet2 (sheet SelectedAwal) tapi berdasarkan kriteria pada kolom Status semua yang DO, Tidak Sekolah, dan Tamat . Data-data yang terseleksi sesuai kriteria tersebut dicopy ke sheet2 dengan format tabel seperti pada sheet1... Kemudian data yang masih tinggal, yang tidak memenuhi kriteria (yang pada kolom status adalah Sekolah) akan dicopy pada sheet2 (sheet Pending). <File terlampir : 1.Bgm_Filter_DataSelectedAwal>.
>
>
>
>
>2. Seperti pada lampiran kedua ( File : 2.Bgm_Filter_DataPending) , jika tadi telah ada data yang uda kian dikasi di sheet2 (sheet SelectedAwal) yang tadinya adalah hasil filter sebagian data dari sheet1 (Sheet ALL), nah bagaimana mengetahui data-data yang belum difilter atau data-data yang belum ada pada sheet SelectedAwal? kemudian data-data yang belum termasuk di sheet SelectedAwal tersebut dimasukkan/dicopy pada sheet Pending dan mengikuti format tabel yang ada?
>
>
>Makasih atas bantuan dan pencerahannya....
> 
>Salam,
>Teti.
>

Fri Nov 23, 2012 2:26 am (PST) . Posted by:

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

Coba file terlampir.

Untuk nomor urut, biasanya dibuat sendiri dengan formula dan di-copy ke
banyak baris sebagai persiapan berubahnya jumlah record dalam pivot table.
Jadi buat formula yang sesederhana mungkin.

Untuk persentase dalam pivot table, maka bagian Values harus diisi dengan
suatu field.
Jika ingin jumlah cacah data (jumlah record), maka klik kanan field yang
dimasukkan tadi, pilih field setting, tab Summarize by pilih item Count.
Untuk persentase, pada field setting tersebut, ke tab Show Values as, pilih
item % of Total atau apapun yang dibutuhkan.

Wassalam,
Kid.

2012/11/23 Teti Zhe <teti_zhe@yahoo.com>

> **
>
>
> Dear Mr. Kid,
> Saran dari Mr.Kid juga sangat membantu, sebagai solusi lain selain macro
> yang diperkenalkan Ms Jan pada saya.. Dua-dua nya sungguh membantu hehehe..
> <dengan ekspresi senang ^^>
> Makasih pengenalan tentang pivot tabel.,.teman saya pernah bilang dengan
> pivot tabel juga bisa menghitung persenan.. kebetulan nih Mr Kid, boleh
> tolong ajari saya, karena data di tabel All itu nanti nya (juga di tabel2
> lainnya) akan saya hitung berapa persen yang DO/Tidak Sekolah/Tamat , dan
> berapa persen dari kategori tersebut yang Female dan Male, kira2 salah satu
> kategori seperti itu,,dan masih banyak lagi data yang akan saya ekstrak
> dari tabel itu untuk laporan tapi musti menggunakan angka persen gitu..nah,
> saya berharap, Mr.Kid boleh kasi pencerahan dnk...
> Cuma solusi pake pivot tabel, nomer urut nya ga bisa berurutan ya ..??
>
> Thanks,..
>
> Salam,
> Teti.
>
> ------------------------------
> *From:* Mr. Kid <mr.nmkid@gmail.com>
> *To:* belajar-excel@yahoogroups.com
> *Sent:* Thursday, November 22, 2012 10:24 AM
>
> *Subject:* Re: [belajar-excel] Cara Filter Data ke Sheet yang lain
> berdasar kriteria
>
>
> Hai Teti,
>
> File terlampir memanfaatkan Pivot Table.
> Data source dibentuk menjadi sebuah pivot cache.
> Sebuah pivot cache bisa digunakan untuk membentuk banyak pivot table.
>
> Pivot table membutuhkan sebuah data source (tabel sumber data yang baik -
> dalam kasus ini adalah tabel di sheet ALL) yang telah dibentuk menjadi
> sebuah pivot cache.
> Jika ingin membuat banyak pivot table dari sebuah pivot cache, copy pivot
> table yang sudah jadi dan paste ke sheet lain atau ketempat lain dalam
> sheet yang sama sesuai kebutuhan.
>
> Hal ini akan membuat proses lebih cepat, karena Excel hanya butuh
> merefresh 1 (satu) pivot cache yang bersumber dari 1 tabel data source).
> Dengan di-refreshnya pivot cache, maka seluruh pivot table yang data
> sourcenya berasal dari pivot cache tersebut akan melakukan refresh tampilan
> saja. Sedang seluruh datanya sudah direfresh oleh pivot cache.
>
> Wassalam,
> Kid.
>
>
>
> 2012/11/21 Teti Zhe <teti_zhe@yahoo.com>
>
> **
>
> Dear All,
> Mohon bantuannya , saya ada data yang ingin saya filter :
>
> 1. Dari sheet1 (sheet ALL) ke sheet2 (sheet SelectedAwal) tapi berdasarkan
> kriteria pada kolom Status semua yang DO, Tidak Sekolah, dan Tamat .
> Data-data yang terseleksi sesuai kriteria tersebut dicopy ke sheet2 dengan
> format tabel seperti pada sheet1... Kemudian data yang masih tinggal, yang
> tidak memenuhi kriteria (yang pada kolom status adalah Sekolah) akan dicopy
> pada sheet2 (sheet Pending). <File terlampir :
> 1.Bgm_Filter_DataSelectedAwal>.
>
>
> 2. Seperti pada lampiran kedua ( File : 2.Bgm_Filter_DataPending) , jika
> tadi telah ada data yang uda kian dikasi di sheet2 (sheet SelectedAwal)
> yang tadinya adalah hasil filter sebagian data dari sheet1 (Sheet ALL), nah
> bagaimana mengetahui data-data yang belum difilter atau data-data yang
> belum ada pada sheet SelectedAwal? kemudian data-data yang belum termasuk
> di sheet SelectedAwal tersebut dimasukkan/dicopy pada sheet Pending dan
> mengikuti format tabel yang ada?
>
> Makasih atas bantuan dan pencerahannya....
>
> Salam,
> Teti.
>
>
>
>
>
>
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