Bapak Ridwan yang baik,

Data memanfaatkan fitur get external data.
1. Refresh data dengan tombol
>> cara 1, menekan tombol refresh all yang disediakan excel
>> cara 2, dengan vba beri kode :
          ThisWorkbook.refreshall

2. Menghitung Saldo (mendapatkan summary saldo dari tabel tagihan dan
pembayaran,
hanya yang tagihan - pembayaran yang > 0 yang diambil.
>> cara 1, buat sebuah view (query) di asal data (Visual FoxPro yang anda
gunakan), lalu tarik dengan cara yang sama seperti anda membuat tabel
tagihan dan pembayaran, letakkan pada sheet saldo.

>> cara 2, langsung susun query pada koneksi excel ke visual foxpro anda
(buat get external data baru dengan query ditulis sendiri), dan keluarkan di
sheet Saldo

Query yang digunakan untuk kedua cara tersebut, bisa seperti demikian :
SELECT tgh.applyto, tgh.custid, tgh.invdate, tgh.jumlah - byr.jumlah as
jumlah
FROM (
SELECT dtgh.applyto, dtgh.custid, dtgh.invdate,
dtgh.amount+dtgh.amtdscnt+dtgh.amtfrt+dtgh.amttax as jumlah FROM arbal as
dtgh WHERE dtgh.type='I' AND dtgh.invdate>{d '2010-01-31'}
) as tgh
INNER JOIN (
SELECT dbyr.applyto, dbyr.custid, dbyr.invdate,
dbyr.amount+dbyr.amtdscnt+dbyr.amtfrt+dbyr.amttax as jumlah FROM arbal as
dbyr WHERE dbyr.type='R' AND dtgh.invdate>{d '2010-01-31'} AND
dbyr.applyto>=' 20200000'
) as byr
ON tgh.applyto=byr.applyto AND tgh.custid=byr.custid AND
tgh.invdate=byr.invdate
WHERE (tgh.jumlah - byr.jumlah) > 0

Tapi hati-hati, jika data tagihan atau data pembayaran masih belum unique,
maka perlu ada proses agregat di masing-masing sub query agar menjadikan
masing-masing subquery bersifat unique. Agregat dilakukan berdasar field :
applyto, custid, dan invdate yang menjadi dimensi utama data.

Keuntungan, dengan sekali refresh semua terbarukan. Tidak ada kalkulasi oleh
excel. Excel hanya emmproses pengambilan data, sedang manipulasi data
dilakukan oleh Visual FoxPro yang anda gunakan.

>> cara 3, dengan formula atau vba (kita tunggu dari rekan lainnya)
Yang jelas, dengan cara 3 ini harus dipertimbangkan ketika data sangat
sering berubah dan jumlah data sangat banyak.


Semoga bermanfaat.
Kid.



2010/2/23 Ridwan Rahman <[email protected]>

>  Ibu Suhu –ctv- yang baik hati,
>
> Mohon pencerahannya untuk kasus filtering data saya. Mungkin hamper sama
> dengan kasus him mah
>
> Cuma saya rasa kalau data banyak kurang fleksibel jadinya untuk bikin
> formula array.
>
> Kasus saya untuk data (terlampir) tagihan dan pembayaran adalah sheet yang
> dinamis, karena me-refresh dari eksternal data.
>
> Mungkin bisa dibantu untuk vba-nya J
>
> Salam
>
> Ridwan
>
>
>
> *From:* [email protected] [mailto:
> [email protected]] *On Behalf Of *siti Vi
> *Sent:* 23 Februari 2010 14:00
>
> *To:* [email protected]
> *Subject:* Re: [belajar-excel] memindahkan data sheet satu ke sheet lain
> dengan kriteria tertentu
>
>
>
>
>
> Filtering dengan Formula lagi nih....
>
> kira kira formulanya
>
>
>
> =IF(ISNUMBER($A4),OFFSET(ASAL!B$1,$A4,0),"")
>
>
>
> tetapi A4 juga berisi formula (*array formula*):
>
> =*SMALL(*IF(x,NomorUrutData)*,NomorUrutData)*
>
>
>
>
>
>  ----- Original Message -----
>
> *From:* him mah <[email protected]>
>
> *To:* [email protected]
>
> *Sent:* Tuesday, February 23, 2010 1:39 PM
>
> *Subject:* [belajar-excel] memindahkan data sheet satu ke sheet lain
> dengan kriteria tertentu
>
>
>
> Assalamu'alaikum Wr. Wb.
>
>
>
> maaf mau tanya (maaf juga kalau sudah di posting mau nyari di arsip koneksi
> internetnya lambat disini)
>
>
>
> misal kita punya data di sheet ASAL
>
> terdiri dari
>
>
>
> NO NAMA ALAMAT KET 1 A AA KIRIM 2 B ABC KIRIM 3 D DDD 4 F FGH KIRIM 5 E EFR
> 6 G GJIK KIRIM 7 H HJKL 8 I IIIII KIRIM 9 M MNOL 10 N NULL KIRIM
>
>
>
> terus mau dipindahkan ke sheet HASIL dengan kriteria KET =KIRIM
>
>
>
> sehingga di sheer HASIL seperti ini
>
>
>
> NAMA ALAMAT KET A AA KIRIM B ABC KIRIM F FGH KIRIM G GJIK KIRIM I IIIII
> KIRIM N NULL KIRIM
>
>
>
> kira-kira caranya seperti apa ya, terima kasih sebelumnya ya
>
>
>
>

Kirim email ke