Maaf bu Siti, saya gangguin lagi. Sekali lagi mohon bantuannya, masih
 masalah yang sama...
 
 Pada tanggal 18/08/10, STDEV(i) <setiyowati.devi@gmail.com> menulis:
 > Perbaikan coding
 >
 > Function *SiapaJabat*(RngRef As Range, Tgl As Date) As String
 >    ' siti Vi/ 17 Aug 2010 / Merdeka
 >    ' menggunakan ASUMSI II / penjelasan di sheet 1
 >    '----------------------------------------------
 >    Dim r As Long, n As Long, t As Long
 >    Dim TglArr() As Date, Ada As Long
 >    SiapaJabat = "Ketua": r = 1
 >    Do While RngRef(r, 1) <> ""
 >       For t = CLng(RngRef(r, 1)) To CLng(RngRef(r, 2))
 >          n = n + 1: ReDim Preserve TglArr(1 To n)
 >          TglArr(n) = CDate(t)
 >       Next t
 >       r = r + 1
 >    Loop
 >    On Error Resume Next
 >    Ada = WorksheetFunction.Match(Tgl, TglArr, 0)
 >    If Ada > 0 Then SiapaJabat = "Wakil Ketua"
 > End Function
 > '------------
 >
 > Tapi sayangnya
 > hasilnya tidak persis sama dengan hasil array formula kiriman mas Kid;
 > untuk *tgl-tgl di luar range *misal tgl *31 Des 2009 * atau *1 Mar 2010*,
 > rumus mas Kid
 > menghasilkan = 0 (penampakan = "Wakil Ketua")  yg artinya saat itu :
 > *Ketua TIDAK DITEMPAT* / *Ketua Sedang dlm Perjalanan Dinas*
 >
 > Satu lagi, formula ajaib dari mas Kid itu jangan di copy > pasteSpecial
 > Value lho ya...
 > karena nanti hasilnya akan ber-ubah menjadi nilai 1 atau 0
 >
 > cmiiw
 > siti
 >
 >
 >
 > 2010/8/17 STDEV(i) <setiyowati.devi@gmail.com>
 >
 >> jadwalnya kok agak mendua..
 >> dikatakan : Ketua Berangkat 1 Jan 2010    Kembali 5 Jan 2010
 >> Kalau kata "KEMBALI" berarti "sudah di kantor lagi" maka
 >> seharusnya keterangannya: tgl 1Jan  sd tgl *4Jan* = Ketua Tidak Ada
 >> di sheet ditulisnya : tgl 1 jan sd tgl *5Jan* = Ketua Tidak Ada
 >> mana  yg benar ??
 >>
 >> Di lain tempat, di E6 = tgl 5 Jan 2010
 >> hasil di F6  diinginkan = "Ketua"  (artinya saat itu di kantor ada
 >> Ketua)?!
 >>
 >> aku ikut seperti diinginkan
 >> *jika di E6 = tgl 5 Jan 2010  >> hasilnya di G6 = "Ketua"*
 >> kalau di E6 tgl 4 jan 2010 barulah hasil di G6 = "Wakil Ketua"
 >>
 >> Rumusnya gampang, tulis di F6
 >> *=Siapa($A$3,E6)*
 >>
 >> rujukan ke jadwal ($A$3) hanya perlu *1 cell *yaitu *cell pertama pada
 >> tabal jadwal*
 >> tak peduli sampai berapa pun jumlah records /baris pada jadwal-nya;
 >> asal tidak ada record loncat parita / baris kosong ...!!!!!
 >>
 >>
 >> --------listing code udf Siapa(Cell1Jadwal, Tgl)---------
 >>
 >> Function Siapa(RngRef As Range, Tgl As Date) As String
 >>    ' siti Vi/ 17 Aug 2010 / Merdeka
 >>    Dim r As Long, n As Long, t As Long
 >>    Dim TglArr() As Date
 >>    r = 1
 >> *   Do *While RngRef(r, 1) <> ""
 >>       *For t* = CLng(RngRef(r, 1)) To CLng(RngRef(r, 2)) - 1
 >>          n = n + 1
 >>          ReDim Preserve TglArr(1 To n)
 >>          TglArr(n) = CDate(t)
 >>       *Next t*
 >>       r = r + 1
 >>  *  Loop   *
 >>    Siapa = "Ketua"
 >>    *For n *= 1 To UBound(TglArr)
 >>       If Tgl = TglArr(n) Then
 >>          Siapa = "Wakil Ketua"
 >>          Exit For
 >>       End If
 >>    *Next n*
 >> End Function
 >> '--------------------------
 >> *Tafsir "Al-Assal":*
 >> semua Tgl yg ada di *RENTANG jadwal *(kecuali tgl yg di kolom kedua)
 >> disusun kedalam
 >> sebuah array-dinamis 1 dimensi (TglArr) .
 >> Lalu Tgl Kriteria (misal yg ada di E6 itu) dicocokkan (samakah) dgn setiap
 >> elemen data
 >> di TglArr, *jika ada yg cocok*, berarti SIAPA = "Wakil Ketua"
 >> Kalau ndak ada tgl yang cocok ??   (ndak usah dijawab)
 >>
 >>
 >>
 >> *2010/8/17 Audra Sakti <Audrasakti@gmail.com>*
 >> > Mohon bantuan dari para pakar,
 >> > ceritanya begini, Ketua punya jadwal perjalanan dinas, misalnya dari
 >> > tgl 1-1-10 s/d 15-1-10, dari tgl 3-2-10 s/d 10-2-10 ketua tidak ada,
 >> > yang diinginkan misalnya pada cell E6 terisi tanggal, maka di F6 akan
 >> > muncul Ketua apabila tanggal di E6 tidak termasuk di Jadwal Ketua.
 >> > Untuk lebih jelasnya ada di lampiran. Saya sudah coba pakai logika,
 >> > IF, OR dan AND. memang bisa, tapi rumusnya kepanjangan, bagaimana
 >> > mempersingkatnya?
 >> >
 >>
 >>
 >
 
| selamat menunaikan ibadah puasa... walau perut lapar, tanya excel |
| jalan terus... malu bertanya telat pulang kantor :D :D :D |
| http://www.facebook.com/group.php?gid=37671048001&ref=mf |
+-------------------------------------------------------------------+
| DILARANG : MLM, money game, OOT, iklan tanpa izin, SARA, testing, |
| pembicaraan pribadi, one line message, melecehkan, tidak sopan. |
+-------------------------------------------------------------------+
| Buat subjek yang kreatif, jangan : "tanya", "help", "mohon bantu" |
| Usahakan besar attachment < 200 kb. Gunakan winzip jika perlu. |
+-------------------------------------------------------------------+
| Ajak teman-teman Anda bergabung dengan mengirim e-mail kosong ke |
| XL-mania-subscribe@yahoogroups.com atau kirimkan mereka file dari |
| http://groups.yahoo.com/group/XL-mania/files/Promotion/ |
+-------------------------------------------------------------------+
| Berikan testimoni di : http://www.friendster.com/xlmania atau... |
| http://www.xl-mania.com/2008/06/testimoni-xl-mania.html |
+-------------------------------------------------------------------+
| Message lama ada di : |
| http://groups.yahoo.com/group/XL-mania/messages [perlu yahoo id] |
| http://www.mail-archive.com/xl-mania@yahoogroups.com |
+-------------------------------------------------------------------+

 
 
Nenhum comentário:
Postar um comentário