Antara Data ( sumber dari PivotTable ) dan file excel dimana PivotTable berada , jika merupakan file yang sama akan timbul error : 'The Connection for viewing your linked ... was lost' untuk itu sumber data pivottable sebaiknya dibuat file tersendiri, misal DataPivot.xls Saya sudah beberapa kali mencoba, baik cara :1. QueryTable , lalu data dipakai untuk pivotTable. Ini yang umumnya dipakai 2. Koneksi ke Excel yang berbeda, lalu buat PivotTable ( PivotCache ) . Ini tak ada Error3. Koneksi ke Excel yang sama , lalu buat PivotTable ( PivotCache ) . Ini ada Error Jadi pakailah cara 1 atau 2. To: belajar-excel@yahoogroups.com From: zainul_u...@yahoo.com Date: Tue, 14 Feb 2012 15:43:52 +0700 Subject: [belajar-excel] Pivot Table hasil query dari beberap table dalam satu workbook dengan VBA
Terlampir adalah file yang sudah saya revisi. Dalam sheet [PlanVsActual$] terdapat 3 command button: CommandButton1: menghasilkan querytable hasil query dari tiga sheets, [Task$], [Plan$] dan [Actual$] CommandButton2: menghasilkan object pivot table dengan mengambil data hasil query dari CommangButton1. Jadi untuk mendapatkan pivot table, object querytable harus ada. CommandButton3: Saat dijalankan masih ada error. Harapan saya bisa membuat object pivot table, tanpa melalu query seperti di commandbutton1 karena query sudah di set di PivotChace. Mohon petunjuknya Wassalam -zainul- -----Original Message----- From: zainul_ulum[at]yahoo[dot]com [mailto:zainul_u...@yahoo.com] Sent: Tuesday, February 14, 2012 1:00 PM To: 'belajar-excel@yahoogroups.com' Subject: RE: [belajar-excel] Pivot Table hasil query dari beberap table dalam satu workbook dengan VBA Terimakasih Pak, Ternyata ada kesalahan di procedure buat tabelnya. Procedurenya diedit menjadi : '=========================================================================== ==== Private Sub CreateAndUpdateQueryTable(rgTarget As Range, strNamaTabel As String, _ sConn As String, ssql As String) Dim oQt As QueryTable, shtTarget As Worksheet Set shtTarget = rgTarget.Parent 'cek jika query table sudah ada On Error Resume Next Set oQt = shtTarget.QueryTables(1) 'hanya boleh satu query dalam satu sheet If Err.Number = 0 Then 'query table sudah ada oQt.CommandText = ssql oQt.Delete 'hapus object querytable jika ada End If 'buat object baru Set oQt = rgTarget.Parent.QueryTables.Add( _ Connection:=sConn, _ Destination:=rgTarget, _ Sql:=ssql) oQt.Name = strNamaTabel Err.Number = 0 oQt.Refresh End Sub '=========================================================================== ==== Untuk pivot table, saya coba buat procedurenya, nanti kalo ada masalah lagi, jangan bosen ditanyain ya.... Wassalam -zainul-