Hai Indra,

Property Parent digunakan untuk mendapatkan object pemilik dari object yang
aktif dikerjakan.
Pada script tersebut, object yang aktif dikerjakan adalah rngFields yang
bertype Range.
Dengan adanya blok with terhadap rngFields, maka .Parent sama saja dengan
rngFields.Parent
artinya, mendapatkan object pemilik object range bernama rngFields.

Nah, object range bernama rngFields, yang berisi range disebuah worksheet,
dimiliki oleh si worksheet.
Jadi rngFields.Parent akan menghasilkan object bertype Worksheet yang
memiliki si range tersebut.

Karena rngFields.Parent menghasilkan object worksheet, maka methods
Calculate yang dipanggil adalah methods milik si worksheet.
Artinya, rngFields.Parent.Calculate akan membuat worksheet tempat si range
yang ada dalam rngFields dikalkulasi.

Wassalam,
Kid.





2013/12/9 ChordJR <[email protected]>

>
>
> Terimakasih atas pencerahannya Mr. Kid...sudah berjalan dengan baik
> sekali...
> Kalo bisa minta penjelasan lagi pada Coding Proses yang berbunyi :
> ��� With rngfields
> ����� .formula = "=Row()-" & rngout.row-1
> �� �� .parent.calculate
>  � � � .value=.value ��
>  ��� End With
>  Property Parent ini setara dengan apa kalo di excel??sudah mencoba
> bantuan F1/Help tapi belum mengerti...
>
> Salam,
>
> Indra
>
> On 12/7/2013 10:43 PM, Mr. Kid wrote:
>
> �
>   Hai Indra,
>
>  Bagaimana jika memanfaatkan formula seperti script berikut :
> Asumsinya : kolom A pasti ada isinya sebanyak jumlah baris data yang ada
> di kolom B dan seterusnya
> Sub AutoShape6_Click()
> ��� Dim rngOut As Range, rngFields As Range
>
> ��� Set rngOut = Sheet2.Range("a8").Offset(1, 0)
> ��� Set rngFields = range(rngout,rngOut.End(xlDown))
>
> ��� With rngfields
> ����� .formula = "=Row()-" & rngout.row-1
>  �� �� .parent.calculate
>  � � � .value=.value ��
>  ��� End With
> End Sub
>
>  Jika maksudnya adalah memberi nomor pada kolom A mengikuti jumlah data
> yang ada di kolom B dan seterusnya, dan kolom B pasti terisi penuh data
> (tidak ada cell yang blank sampai record terakhir), maka ganti bagian :
> ��� Set rngFields = range(rngout,rngOut.End(xlDown))
>  menjadi :
>  ��� Set rngFields = range(
> rngOut.offset(0,1).End(xlDown).offset(0,-1) , rngout )
>
>  Wassalam,
>  Kid.
>
>
>
>
>
> On Fri, Dec 6, 2013 at 8:22 PM, ChordJR <[email protected]> wrote:
>
>>  �
>>
>> Dear Be-Exceller,
>>
>> Mau tanya tentang macro yang sudah saya buat kok tidak bisa berjalan
>> sesuai keinginan...mohon di koreksi apabila ada kesalahan pada
>> coding"nya...
>>
>> Sub AutoShape6_Click()
>> Dim rngOut As Range, rngFields As Range
>> Dim lHitung As Long, lFields As Long
>>
>> Set rngOut = Sheet2.Range("a8").Offset(1, 0)
>> Set rngFields = rngOut.End(xlDown)
>> lHitung = 0
>> lFields = rngFields.Count
>> lHitung = lHitung + 1
>>
>> With rngOut
>> .Value = lHitung
>> .Resize(0, rngFields).DataSeries Rowcol:=xlColumns,
>> Type:=xlLinear, Date:=xlDay, _
>> Step:=1, Trend:=False
>> End With
>> End Sub
>>
>> Wassalam,
>>
>> Indra
>>
>
>
>  
>

Kirim email ke