Tecnologia, programação e muito Visual FoxPro.

segunda-feira, 12 de julho de 2010

Re: ]] XL-mania [[ aplikasi list box untuk tampilan chart secara dinamis

 

CARA LAIN, selain PiVot tabel & PivotChart seperti saran dari mas Kid:

** katakan misalnya KRITERIA yaitu NAMA KOTA akan ditulis di cell J5;
kita bisa atur agar value dari ListBox2 akan selalu dituliskan di cell J5
dengan cara memberi nilai Property LinkedCell milik ListBox2 = "J5"

** truss, kita dapat membuat TABEL DINAMIS berdasarkan J5, dengan
fungsi OFFSAID (yg bener offsaid apa offset sih, kemarin di tv yang banyak
dibicarakan kok offsaid bukan offset yaa)

=OFFSET(A1:E1;MATCH(J5;B2:B33;0);0;COUNTIF(B2:B33;J5);)
formula ini dituliskan (secara sekaligus) di RANGE berdimensi 5 kolom x 4 baris,
misal di M2:Q5; dan di-enter sebagai ArrayFormula (tombol C+S+E, awas & ati-ati:
jari-jari
anda bisa keseleo..)

Array Formula ini akan menghasilkan TABEL yg merupakan BAGIAN dari tabel sumber A2:E33; dengan spesifkasi letak data sumber yang diambil adalah
* selebar 5 KOLOM (A:E)
* dimulai dari baris ke R (dimana R adalah angka-posisi J5 (kriteria namakota) di tabel tsb)
  lihat Match(J5,B2:B33,0)
* sebanyak N baris (dimana N adalah banyaknya "kriteria namakota" yg terdapat di tabel tsb)
  lihat COUNTIF(B2:B33;J5)

Karena J5 dapat diubah ubah (dengan memilih item pada ListBox2) maka tabel yg
tercipta adalah tabel yang datanya = dinamis, bisa berubah ubah sesuai kriteria
di ListBox2 (yg kemudian terrefleksikan di J5) yg anda tentukan.

Jadi inti dari trick yg ditawarkan ini adalah :
"membuat tabel dinamis agar CHARTnya menjadi dinamis pula"
(bukan : merekayasa chart agar dinamis berdasarkan tabel statis A2:E33; yg
saya kira = sulit )


Akan halnya dua Listbox

* agar ListBox1 terisi Daftar-Uniq PULAU
kita pakai cara sederhana  Kolom A1:A33 di -AdvanceFilter > UniqRecordOnly
hasilnya diletakkan misalnya di cel AF2:AF3
Property ListFillRange milik ListBox1 diisi = "AF2:AF3"
ini dapat dilakukan tanpa pemrograman, karena anda hanya perlu menampakkan
kotak proterty siObject, cari property ListFillRange lalu isikan alamat range ybs.
(cara ini masih kurang baik, karena jika data sumber berubah / misalnya bertambah dgn
PULAU baru; range AF2:AF3 tidak bisa otomatis mengikuti data sumber;
di tulisan /
posting terpisah kita akan coba membuat semuanya otomatis mengikuti data sumber)


* agar ListBox2 terisi DaftarUniq KOTA yg ada di PULAU yg sedang ditunjuk oleh
ListBox1
ini terpaksa pakai pemrograman
Codingnya cukup sederhana karena tabel sumber sudah sorted (byPulau & ByKota)
Kita akan memanfaatkan even ListBox1_Change seperti di bawah ini:

'--makro yg otomatis mengisi ListBox2 berdasarkan Value di ListBox1
Private Sub ListBox1_Click()
   ' siti Vi // 10 Juli 2010
   Dim Pulaus As Range, i As Integer
   Set Pulaus = Range(Range("A1"), Range("A1").End(xlDown))
   ListBox2.Clear
   For i = 1 To Pulaus.Rows.Count
      If Pulaus(i, 1) = ListBox1.Value Then
         If Pulaus(i, 2) <> Pulaus(i - 1, 2) Then
            ListBox2.AddItem Pulaus(i, 2)
         End If
      End If
   Next i
End Sub
'-----

bluewater, 10 Jul 2010
siti

lampran workbook :
ctv_data suhu udara dan kelembaban.xls



2010/7/9 Reza <jaxcom@gmail.com>

Dear senior XL,
Mohon bantuannya untuk dapat menampilkan multiple charts secara dinamis dari serangkaian data terlampir.
Idenya adalah, memilih "Pulau" dari List Box1 dan secara otomatis List Box2 menampilkan "Kota" berdasarkan "Pulau" terpilih dan selanjutnya chart "Suhu udara" dan "Kelembaban" akan tampil berdasarkan pilihan. Diinginkan pilihan bisa lebih dari 1 (multiple).
Terima kasih.

__._,_.___
Recent Activity:
+-:: XL-mania ::::::::::::::::::::----------------------------------+
| jangan lupa sebelum bertanya, cek dulu www.XL-mania.com dan       |
| http://tech.groups.yahoo.com/group/XL-mania/messages              |
| 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              |
+-------------------------------------------------------------------+
MARKETPLACE

Stay on top of your group activity without leaving the page you're on - Get the Yahoo! Toolbar now.


Get great advice about dogs and cats. Visit the Dog & Cat Answers Center.


Hobbies & Activities Zone: Find others who share your passions! Explore new interests.

.

__,_._,___

Nenhum comentário:

Arquivo do blog