dibuatkan 2 procedures SEPERTI INI : *1 * *dijalankan denan dobel klik pada cell C1* hanya menginsert DI DALAM TABEL / (diluar (kanan kiri) tabel baris tida ikut tergeser
Private Sub *Worksheet_BeforeDoubleClick*(ByVal Target As Range, Cancel As
Boolean)
'- diinsert barus hanya di dalam tabel
Dim Rng As Range, r As Long
Set Rng = Cells(1).CurrentRegion
If Target.Cells.Count = 1 Then
If *Target.Address = "$C$1"* Then
For r = Rng.Rows.Count To 2 Step -1
If Rng(r - 1, 3).Value = 1 Then
Rng(r, 1).Resize(1, Rng.Columns.Count).Insert _
Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
End If
Next r
End If
End If
End Sub
*2*
*dijalankan dengan klik Tombol*
menginsert FullRow (kanan kiri tabel ikut terShifted (ke bawah)
Private Sub *CommandButton1_Click*()
'- diinsert entire row
Dim Rng As Range, r As Long
Set Rng = Cells(1).CurrentRegion
For r = Rng.Rows.Count To 2 Step -1
If Rng(r - 1, 3).Value = 1 Then
Rng(r, 1).EntireRow.Insert _
Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
End If
Next r
End Sub
*penjelasan asal-asalan...*
diadakan acara kunjungan ke seluruh baris di dalam tabel (range bernama Rng)
kecuali baris 1, dengan arah perjalanan *dari bawah ke atas*
(sebelumnya dimensi *Rng* ditentukan dengan meng-Currentregion-kan) A1)
setiap baris hanya dilihat *cell di kolom 3 saja*
pada saat itu, diilhat (di-evaluasi) apakah CELL DI ATASNYA bernilai 1 ?
Jika = YA, maka di baris yg sedang dikunjungi diinsert baris baru
(Jika = TIDAK = ya tidak perlu ngapa-ngapain, cuek saja...)
Ya atau tidak, setiap kunjungan toh harus diteruskan dengan kunjungan
ke cell lain di atasnya; sampai berakhir di baris dua saja.
pertanyaan iseng:
mengapa baris 1 tidak perlu dikunjungi dan dievaluasi cell di ATASNYA ?
karena yg akan diisert harus cell DIBAWAH cell yg bernilai 1
dan lagi baris 1 kan tidak punya CELL DI ATASNYA (yg akan dievaluasi) ?!!
ya kan ?
di excel tndakan *insert-row terhadap 1 baris* menghasilkan baris baru DI
BA WAH NYA !
hal ini harus kita ketahui tanpa ragu !
2012/1/24 Fano The Miner <[email protected]>
> Dear All Be Exceler..****
>
> Mohon bantuannya,,****
>
> Saya punya data seperti gambar di bawah.****
>
> *seperti apa* *VBA macro code* :****
>
> jika nilai di range kolom C = 1. maka otomatis Insert Row/Baris di bawah
> cell tersebut. (File Terlampir)****
>
> Thanks Before****
>
> Salam
>
> ** **
>
--
*- i Haps -*
Vba Code for insert row based on cell value (iHaps).xlsm
Description: application/vnd.ms-excel.sheet.macroenabled.12

