hmmm...

gimana kalau pakai cara dengan membuat nama range dulu... (tapi nama range
bisa dihapus oleh user, sengaja atau tidak sengaja... wkwkwkwk)
itu loh, yang ada di ribbon Formulas -> grup menu Defined Names -> Name
Manager -> New

Setelah itu barulah si nama range dipakai di VBA
    sheets("nama sheet").range("nama range yang sudah dibuat").clearcontents
    *** Gak perlu pakai select-select-an

*** Jadi, cara yang begini ini nih
         range("blabla").select
         selection.clearcontents
     harap ditinggalkan... supaya bisa lebih maju lagi dalam memanfaatkan
VBA
     kalau pakai select-select-an terus, gak maju-maju pakai VBA-nya
     masa' hari ini sama aja dengan yang kemarin-kemarin tanpa peningkatan...


btw,
cara yang baris kodenya panjang banget itu, bukannya tidak bisa
diselesaikan andai tetep ngotot pakai baris kode sepanjang itu..
hanya tidak cantik sajah...

kalau memang sukanya yang gak cantik, begini caranya supaya si gak cantik
itu bekerja :
> targetnya supaya 1 kali klik beres kan, gak peduli berapa pun baris
kodenya...

*cara 1 : Pakai 2 prosedur yang sudah ada itu*

Sub hapus1()
                   Sheets("OlahNil").Range("F10:I45,K10:N45,P10:
S45,U10:X45,Z10:AC45,AE10:AH45,AJ10:AM45,AO10:AR45,AT10:
AW45,AY10:BB45,BD10:BG45,BI10:BL45,BN10:BQ45,BS10:BV45,BX10:
CA45,CC10:CF45,CH10:CK45,CM10:CP45,CR10:CU45,CW10:CZ45,DB10:
DE45,DG10:DJ45,DL10:DO45,DQ10:DT45,DV10:DY45,EA10:ED45").ClearContents


*    hapus2 *

End Sub


Sub hapus2()
                 Sheets("OlahNil").Range("EF10:EI45,EK10:EN45,
EP10:ES45,EU10:EX45,EZ10:FC45,FE10:FH45,FJ10:FM45,FO10:FR45,
FT10:FW45,FY10:GB45,GD10:GG45,GI10:GL45,GN10:GQ45,GS10:GV45,
GX10:HA45,HC10:HF45,HH10:HK45,HM10:HP45,HR10:HU45,HW10:HZ45,
IB10:IE45,IG10:IJ45,IL10:IO45,IQ10:IT45").ClearContents



End Sub

*cara 2 : Pakai 1 prosedur sajah*

Sub hapus1()
                   Sheets("OlahNil").Range("F10:I45,K10:N45,P10:
S45,U10:X45,Z10:AC45,AE10:AH45,AJ10:AM45,AO10:AR45,AT10:
AW45,AY10:BB45,BD10:BG45,BI10:BL45,BN10:BQ45,BS10:BV45,BX10:
CA45,CC10:CF45,CH10:CK45,CM10:CP45,CR10:CU45,CW10:CZ45,DB10:
DE45,DG10:DJ45,DL10:DO45,DQ10:DT45,DV10:DY45,EA10:ED45").ClearContents


                   Sheets("OlahNil").Range("EF10:EI45,EK10:EN45,
EP10:ES45,EU10:EX45,EZ10:FC45,FE10:FH45,FJ10:FM45,FO10:FR45,
FT10:FW45,FY10:GB45,GD10:GG45,GI10:GL45,GN10:GQ45,GS10:GV45,
GX10:HA45,HC10:HF45,HH10:HK45,HM10:HP45,HR10:HU45,HW10:HZ45,
IB10:IE45,IG10:IJ45,IL10:IO45,IQ10:IT45").ClearContents

End Sub




*Tentang kenapa kalau digabung jadi puanjang buanget 1 baris malah error...*
Kalau merujuk range pakai string alamat range yang seperti ini :
    Range("teks alamat range")
maka 'teks alamat range' maksimal berisi 255 karakter saja. Itu batasan
dari object range-nya sendiri
Jadi, tidak usah sok kreatif pakai begini : (nanti ndak malah ketahuan kalo
gak suka baca secara detil... wakakaka)
    dim sAlamat as string    ' Tipe data string seperti yang dipakai si
variabel sAlamat ini memang bisa berisi banyak sekali karakter (ribuan dah)
    sAlamat = "isi teks alamat range yang jumlah karakternya lebih dari 255
karakter"
    sheets("nama sheet").range( sAlamat ).clearcontents
atau menyimpan alamat range yang panjang banget itu di sebuah cells, lalu
dipakai seperti ini :
    with sheets("nama sheet")
          .range( .range("a1").value ).clearcontents      'alamat range
yang panjang banget disimpan di cells a1
    end with
lha wong sudah jelas bahwa :
object range menuntut, jika pakai notasi alamat bertipe string, maka
maksimal panjang karakter string alamat range-nya adalah 255 karakter.


sak jan-jan nya...
kalau area yang akan diproses tersebut memiliki pola dan memiliki
identifier, mungkin ada lebih banyak cara yang bisa digunakan..

Regards,
Kid



2018-05-15 13:45 GMT+07:00 Prazt Math praztm...@gmail.com [belajar-excel] <
belajar-excel@yahoogroups.com>:

>
>
> Makasih responnya Mr.Kid…
> metodenya ga harus itu, kasih metodenya Mr.kid ya…
>
>
>
>
>
> Sent from Mail <https://go.microsoft.com/fwlink/?LinkId=550986> for
> Windows 10
>
>
>
> *From: *'Mr. Kid' mr.nm...@gmail.com [belajar-excel]
> <belajar-excel@yahoogroups.com>
> *Sent: *Selasa, 15 Mei 2018 13.37
> *To: *BeExcel <belajar-excel@yahoogroups.com>
> *Subject: *Re: [belajar-excel] VBA hapus kolom nilai
>
>
>
>
>
> eh..
>
> panjang banget baris kodenya.....
>
> tidak bisa diperpendekkah ?
>
> bukankah repot buanget penyesuaian baris kode-nya jika dilakukan insert
> atau delete column atau row ?
>
> ada baiknya dipilih metode lain saja deh...
>
>
>
> gimana ?
>
>
>
> hehehe
>
>
>
>
>
>
>
>
>
>
>
> 2018-05-15 12:47 GMT+07:00 Prazt Math praztm...@gmail.com [belajar-excel]
> <belajar-excel@yahoogroups.com>:
>
>
>
> Selamat siang para master, mohon pecerahannya, saya ingin membuat macro
> vba untuk menghapus kolom nilai tetati terkendala, vba yang saya bikn
> seperti berikut ;
>
> Sub hapus1()
>
>     Range("F10").Select
>
>     Sheets("OlahNil").Select
>
>     Range("F10:I45,K10:N45,P10:S45,U10:X45,Z10:AC45,AE10:
> AH45,AJ10:AM45,AO10:AR45,AT10:AW45,AY10:BB45,BD10:BG45,BI10:
> BL45,BN10:BQ45,BS10:BV45,BX10:CA45,CC10:CF45,CH10:CK45,CM10:
> CP45,CR10:CU45,CW10:CZ45,DB10:DE45,DG10:DJ45,DL10:DO45,DQ10:
> DT45,DV10:DY45,EA10:ED45").Select
>
>
>
>     Selection.ClearContents
>
>     Range("E10").Select
>
> End Sub
>
>
>
>
>
> Sub hapus2()
>
>     Range("F10").Select
>
>     Sheets("OlahNil")..Select
>
>     Range("EF10:EI45,EK10:EN45,EP10:ES45,EU10:EX45,EZ10:FC45,
> FE10:FH45,FJ10:FM45,FO10:FR45,FT10:FW45,FY10:GB45,GD10:GG45,
> GI10:GL45,GN10:GQ45,GS10:GV45,GX10:HA45,HC10:HF45,HH10:HK45,
> HM10:HP45,HR10:HU45,HW10:HZ45,IB10:IE45,IG10:IJ45,IL10:IO45,
> IQ10:IT45")..Select
>
>
>
>     Selection..ClearContents
>
>     Range("E10").Select
>
> End Sub
>
>
>
> ============================================================
> ========================================
>
>
> tetapi jika saya gabung menjadi seperti berikut ini supaya hanya satu kali
> klik bisa terhapus karena masih dala 1 sheet kenapa kok error alias tidak
> jalan  ;saya memakai excel 2016
>
>
>
> Sub hapus1()
>
>     Range("F10").Select
>
>     Sheets("OlahNil").Select
>
>     Range("F10:I45,K10:N45,P10:S45,U10:X45,Z10:AC45,AE10:
> AH45,AJ10:AM45,AO10:AR45,AT10:AW45,AY10:BB45,BD10:BG45,BI10:
> BL45,BN10:BQ45,BS10:BV45,BX10:CA45,CC10:CF45,CH10:CK45,CM10:
> CP45,CR10:CU45,CW10:CZ45,DB10:DE45,DG10:DJ45,DL10:DO45,DQ10:
> DT45,DV10:DY45,EA10:ED45,EF10:EI45,EK10:EN45,EP10:ES45,EU10:
> EX45,EZ10:FC45,FE10:FH45,FJ10:FM45,FO10:FR45,FT10:FW45,FY10:
> GB45,GD10:GG45,GI10:GL45,GN10:GQ45,GS10:GV45,GX10:HA45,HC10:
> HF45,HH10:HK45,HM10:HP45,HR10:HU45,HW10:HZ45,IB10:IE45,IG10:
> IJ45,IL10:IO45,IQ10:IT45").Select
>
>
>
>     Selection.ClearContents
>
>     Range("E10").Select
>
> End Sub
>
>
>
> Sent from Mail <https://go.microsoft.com/fwlink/?LinkId=550986> for
> Windows 10
>
>
>
>
>
>
>
> 
>

Kirim email ke