Pakai Excel berapa ?
Ada juga yang demikian ya...
Kalau pakai Application.worksheetfunction bisa gak ? (cuma pengen tahu saja)
Kalau bisanya pakai Application ya pakai Application saja gak perlu pakai
worksheetfunction. Hanya saja, mungkin beberapa fungsi bawaan Excel (yang
dipakai di worksheet) tidak bisa digunakan jika menggunakan
Application.namafungsiexcelnya
Untuk yang gak bisa ini, baru pakai
Application.worksheetfunction.namafungsiexcelnya

btw, gak bisanya bunyi apa ? Sub or Function not defined atau doesn't
support blabla Methods or properties gitu ?

Perbedaan dari :
Sheets("MASA").Range("C" & xy)= _
worksheetfunction.Index(Sheets("BPS").Range("A3:J20"),worksheetfunction.Match(ms,Sheets("BPS").Range("A3:A20"),
0), 10)

dibandingkan dengan ini
Sheets("MASA").Range("C" & xy)= _
worksheetfunction.Index(Sheets("BPS").Range("j3:J20"),worksheetfunction.Match(ms,Sheets("BPS").Range("A3:A20"),
0))

Adalah pada rujukan range bagian Index yang hanya merujuk 1 kolom (bawah)
dibanding 10 kolom (atas), sehingga tidak perlu ,10


Perbedaan dari :
Sheets("MASA").Range("C" & xy)=*vbnullstring*
dengan
Sheets("MASA").Range("C" & xy)=*""*
sama saja perbedaan antara vbNullString dengan ""

- Keduanya menghasilkan nilai yang sama, yaitu karakter kosong (nullstring)
yang bertipe string
- vbNullstring adalah suatu konstanta yang merujuk ke karakter kosong
- ekspresi "" adalah suatu nilai string yang kosong, sehingga setara dengan
karakter kosong
- konon, VB maupun VBA lebih cepat bereaksi terhadap vbNullString dibanding
dengan ekspresi ""

Wassalam,
Kid.


2012/10/30 him mah <[email protected]>

> **
>
>
> dikomputer saya kalau pakai worksheetfunction ngga bisa tapi kalau
> pakai Application bisa, kira-kira kenapa ya
>
> beda
>
>
> Sheets("MASA").Range("C" & xy)= _
>
> worksheetfunction.Index(Sheets("BPS").Range("A3:J20"),worksheetfunction.Match(ms,
> Sheets("BPS").Range("A3:A20"), 0), 10)
>
> dibandingkan dengan ini
>
>
> Sheets("MASA").Range("C" & xy)= _
>
> worksheetfunction.Index(Sheets("BPS").Range("j3:J20"),worksheetfunction.Match(ms,
> Sheets("BPS").Range("A3:A20"), 0))
>
> beda
>
> Sheets("MASA").Range("C" & xy)=vbnullstring
> dengan
>
> Sheets("MASA").Range("C" & xy)=""
>
> Pada tanggal 30/10/12, Mr. Kid <[email protected]> menulis:
>
> > Cara 1 :
> >>> ubah format number cell tujuan menjadi bertipe text tepat sebelum
> > penulisan nilai kedalam cell
> > range("tujuan").numberformat="@"
> >
> >>> lanjutkan dengan memasukkan nilai ke cell tujuan :
> > range("tujuan").value = nilainya_bisa_jadi_hasil_worksheetfunction
> >
> > Cara 2 : (hanya bisa untuk cara pasang formula)
> > Usai calculate formula :
> > range("bla").formula ="=formulanya" 'pasang formula
> > range("bla").parent.calculate 'calculate sheet
> >
> > lakukan copy paste values
> > range("bla").copy
> > range("bla").pastespecial xlpastevalues
> >
> > Wassalam,
> > Kid.
> >
> >
> >
> > 2012/10/30 him mah <[email protected]>
> >
> >> **
>
> >>
> >>
> >> terima kasih. mau tanya lagi misalnya data awalnya itu text yg isinya
> >> angka lebih dari 15 ketika dijalankan vba di atas hasi lnya menjadi
> >> number. supaya hasilnya tetap text bagaimana ya
> >>
> >> 2012/10/30, Mr. Kid <[email protected]>:
> >>
> >> > Coba :
> >> >
> >> > 'Dim hasil As String
> >> > Dim ms As Long
> >> > dim xy as Long
> >> >
> >> > For xy = 2 To 13
> >> > ms = Sheets("MASA").Range("a" & xy)
> >> > if worksheetfunction.countif( Sheets("BPS").Range("A3:A20") , ms ) <>
> >> > 0 then
> >> > Sheets("MASA").Range("C" & xy)= _
> >> >
> >> >
> >>
> worksheetfunction.Index(Sheets("BPS").Range("A3:J20"),worksheetfunction.Match(ms,
> >> > Sheets("BPS").Range("A3:A20"), 0), 10)
> >> > else
> >> > Sheets("MASA").Range("C" & xy)=vbnullstring
> >> > endif
> >> > Next xy
> >> >
> >> > Wassalam,
> >> > Kid.
> >> >
> >> >
> >> >
> >> > 2012/10/30 him mah <[email protected]>
> >> >
> >> >> **
> >>
> >> >>
> >> >>
> >> >> saya coba buat rumus seperti ini
> >> >>
> >> >> Dim hasil As String
> >> >> Dim ms As Long
> >> >> dim xy as Long
> >> >>
> >> >> For xy = 2 To 13
> >> >> ms = Sheets("MASA").Range("a" & xy)
> >> >> hasil = Application.Index(Sheets("BPS").Range("A3:J20"),
> >> >> Application.Match(ms, Sheets("BPS").Range("A3:A20), False), 10)
> >> >> If IsError(hasil) Then hasil = "" Else hasil = hasil
> >> >>
> >> >> Sheets("MASA").Range("C" & xy) = hasil
> >> >> Next xy
> >> >>
> >> >> ketika datanya tidak ditemukan di sheets BPS masa akan muncum run
> time
> >> >> error 13
> >> >>
> >> >> kemudian kalau ditambahkan resume next untuk data yang tidak ada
> >> >> hasilnya adalah data sebelumnya
> >> >>
> >> >> kalau yang seperti ini pemesahannya gimana ya
> >> >>
> >> >>
> >> >
> >>
> >>
> >>
> >
>
>  
>

Kirim email ke