hmmm....

Pak HK dan BeExceller semua...

ActiveWorkbook dan ThisWorkbook itu 2 (dua) object yang berbeda.
ActiveWorkbook berisi workbook yang sedang aktif
ThisWorkbook berisi workbook tempat si baris kode berada, alias object
ThisWorkbook di dalam folder Excel Object di VBProject tempat si baris kode
ditulis

Contoh :
Ada workbook 'Book1' hasil new workbook (belum di-save) tapi terbuka di
Excel Application.
Kemudian ada workbook 're-DATA.xlsx' (dari file re-Data.xlsx) yang juga
sedang terbuka di Excel Application yang sama dengan Book1 tadi.
Ada sebuah prosedur di workbook 're-DATA.xlsx'. Bunyi prosedur tersebut
beserta tampilan ketika si prosedur dijalankan adalah sebagai berikut :

​Ingat ya...
1. prosedur itu ada di re-DATA.xlsx, lalu dijalankan
2. baris kode Workbooks("Book1").Activate akan membuat workbook Book1
menjadi aktif. Jadi, ActiveWorkbook berisi Book1, walaupun prosedur yang
kerja ada di workbook re-DATA.xlsx
3. MsgBox yang muncul menjelaskan semuanya...

Jadi, TIDAK SELALU ThisWorkbook adalah ActiveWorkbook, karena
ActiveWorkbook dan ThisWorkbook adalah 2 (dua) object yang sejatinya
berbeda
walau terkadang mereka merujuk (MERUJUK bukan PERWUJUDAN) ke object
workbook yang sama dan sedang aktif.
Contoh prosedur di atas adalah bukti bahwa workbook yang aktif
(ActiveWorkbook) tidak selalu merujuk ke workbook yang sama dengan
ThisWorkbook.

Regards,
Kid






On Sun, Dec 3, 2017 at 9:25 AM, hendrik karnadi hendrikkarn...@yahoo.com
[belajar-excel] <belajar-excel@yahoogroups.com> wrote:

>
>
> Sebelum Mr. Kid turun gunung, saya coba menjawab dari uraian mas Nang.
>
> Kesalahannya kayaknya disini
> set wb = ThisWorkbook
> Sel aktif kan masih ada di Workbook ThisWorkbook.
>
> Jadi ga mungkin wb dipakai untuk menunjuk ke workbook lain.
>
> Salam,
> HK
>
>
> Sent from Yahoo Mail on Android
> <https://overview.mail.yahoo.com/mobile/?.src=Android>
>
> On Sun, Dec 3, 2017 at 7:49, nangagus nanga...@gmail.com [belajar-excel]
> <belajar-excel@yahoogroups.com> wrote:
>
>
> Asalamualaikum warahmatullah.
>
> 1. Saya membuat cekrip sederhana untuk menghapus cell.
> sheet1.Range("A1:A3).ClearContents
>
> cekrip tersebut dapat berjalan dengan baik.
>
> namun setelah saya tambahkan:
> set wb = ThisWorkbook
> wb.sheet1.Range("A1:A3).ClearContents
>
> terdapat eror, dimanakah kesalahannya? karena cekrip akan digunakan
> untuk menghapus cell di workbook lain.
>
> 2. Masih dalam cekrip yangsama:
> Workbooks("book1.xlsx").Sheets("Sheet1").Range("A1:A3").ClearContents
>
> dapat berjalan dengan baik pada office 2010 namun tidak dapat dilakukan
> di office 2013, bagaimana cara perbaikannya?
>
> Terima kasih
>
> Wasalamualaikum warahmatullah
>
> KenangAgus
>
> 
>
  • [belajar-excel] K... nangagus nanga...@gmail.com [belajar-excel]
    • Re: [belajar... hendrik karnadi hendrikkarn...@yahoo.com [belajar-excel]
      • Re: [bel... 'Mr. Kid' mr.nm...@gmail.com [belajar-excel]
        • Re: ... nangagus nanga...@gmail.com [belajar-excel]
          • ... 'Mr. Kid' mr.nm...@gmail.com [belajar-excel]
            • ... nangagus nanga...@gmail.com [belajar-excel]
              • ... 'Mr. Kid' mr.nm...@gmail.com [belajar-excel]
                • ... nangagus nanga...@gmail.com [belajar-excel]
    • Re: [belajar... 'Mr. Kid' mr.nm...@gmail.com [belajar-excel]

Kirim email ke