6 New Messages
Digest #1762
Messages
Sun Sep 9, 2012 12:33 am (PDT) . Posted by:
"Fendi S" fendis@rocketmail.com
Kepada Yth. Para master belajar-excel;@yahoogroups.com
Tolong bantuannya cara memasukkan data mobil di Sheet "data masuk" yang secara otomatis
akan masuk di sheet kolektif secara terus menerus, seperti fike t\erlampir
Terima kasih atas penjelasannya
Salam .
Tolong bantuannya cara memasukkan data mobil di Sheet "data masuk" yang secara otomatis
akan masuk di sheet kolektif secara terus menerus, seperti fike t\erlampir
Terima kasih atas penjelasannya
Salam .
Sun Sep 9, 2012 1:04 am (PDT) . Posted by:
"Kid Mr." nmkid.family@ymail.com
Hai Fendi,
Hal seperti ini membutuhkan VBA.
Silakan coba step berikut : (Maaf kalau berbeda dengan file aslinya, karena
hanya dilihat dari GDocs)
1. Pada D3 ada formula Count berdasar kolom D sheet sebelahnya. Maka
pastikan format number cell D8 adalah General atau Number dan tidak boleh
Text.
2. Pada D4 tidak ada formulanya, artinya harus diinput oleh user. Jika
ingin dibuat auto, beri formula :
=D3+1
3. Karena filenya adalah xlsx, save as file dengan ekstensi .xlsm atau
.xlsb agar VBA dapat tersimpan dalam file.
4. Klik ribbon (menu) Developer -> lihat grup Controls -> klik Insert ->
lihat bagian *ActiveX *-> pilih Command Button -> gambar kotak di worksheet
5. Pastikan icon Design Mode pada ribbon Developer telah menyala (On)
6. Klik kanan tombol yang terbuat di proses 4 -> pilih properties -> set
sebagai berikut :
>> untuk properti *Name *isinya diganti menjadi cmdSave
>> untuk properti *Caption *isinya diganti menjadi Simpan
akhiri dengan menekan tombol close (x) pada dialog properties
7. Double click tombol tersebut
8. tulis disana script berikut :
range("d4,d6:d11").copy 'copy data
'paste special values di transpose
sheets("kolektif").range("a1").offset( range("d4").value
).pastespecial xlpastevalues, trnaspose:=true
'hapus data yang sudah di save dari sheet input
'jika d4 pakai formula : (aktifkan [hapus karakter ' pada 1 baris
berikut ini])
'range("d6:d11").clearcontents
'jika d4 tidak pakai formula : (aktifkan [hapus karakter ' pada 1
baris berikut ini])
'range("d4:d11").clearcontents
'pesan
msgbox "Saved.",vbinformation,"Simpan Data"
9. kembali ke worksheet (tekan ALT F11)
10. save workbook (ingat, pastikan ekstensinya : .xlsm atau .xlsb atau .xls)
11. silakan coba tekan tombolnya
Wassalam,
Kid.
2012/9/9 Fendi S <fendis@rocketmail.com >
> **
>
>
> Kepada Yth. Para master belajar-excel;@yahoogroups.com
> Tolong bantuannya cara memasukkan data mobil di Sheet "data masuk" yang
> secara otomatis
> akan masuk di sheet kolektif secara terus menerus, seperti fike t\erlampir
> Terima kasih atas penjelasannya
> Salam .
>
>
>
Hal seperti ini membutuhkan VBA.
Silakan coba step berikut : (Maaf kalau berbeda dengan file aslinya, karena
hanya dilihat dari GDocs)
1. Pada D3 ada formula Count berdasar kolom D sheet sebelahnya. Maka
pastikan format number cell D8 adalah General atau Number dan tidak boleh
Text.
2. Pada D4 tidak ada formulanya, artinya harus diinput oleh user. Jika
ingin dibuat auto, beri formula :
=D3+1
3. Karena filenya adalah xlsx, save as file dengan ekstensi .xlsm atau
.xlsb agar VBA dapat tersimpan dalam file.
4. Klik ribbon (menu) Developer -> lihat grup Controls -> klik Insert ->
lihat bagian *ActiveX *-> pilih Command Button -> gambar kotak di worksheet
5. Pastikan icon Design Mode pada ribbon Developer telah menyala (On)
6. Klik kanan tombol yang terbuat di proses 4 -> pilih properties -> set
sebagai berikut :
>> untuk properti *Name *isinya diganti menjadi cmdSave
>> untuk properti *Caption *isinya diganti menjadi Simpan
akhiri dengan menekan tombol close (x) pada dialog properties
7. Double click tombol tersebut
8. tulis disana script berikut :
range("d4,d6:
'paste special values di transpose
sheets("kolektif"
).pastespecial xlpastevalues, trnaspose:=true
'hapus data yang sudah di save dari sheet input
'jika d4 pakai formula : (aktifkan [hapus karakter ' pada 1 baris
berikut ini])
'range("d6:d11"
'jika d4 tidak pakai formula : (aktifkan [hapus karakter ' pada 1
baris berikut ini])
'range("d4:d11"
'pesan
msgbox "Saved.",vbinformat
9. kembali ke worksheet (tekan ALT F11)
10. save workbook (ingat, pastikan ekstensinya : .xlsm atau .xlsb atau .xls)
11. silakan coba tekan tombolnya
Wassalam,
Kid.
2012/9/9 Fendi S <fendis@rocketmail.
> **
>
>
> Kepada Yth. Para master belajar-excel;
> Tolong bantuannya cara memasukkan data mobil di Sheet "data masuk" yang
> secara otomatis
> akan masuk di sheet kolektif secara terus menerus, seperti fike t\erlampir
> Terima kasih atas penjelasannya
> Salam .
>
>
>
Sun Sep 9, 2012 1:09 am (PDT) . Posted by:
"Kid Mr." nmkid.family@ymail.com
Koreksi bagian :
sheets("kolektif").range("a1").offset( range("d4").value
).pastespecial xlpastevalues, *trnaspose*:=true
menjadi :
sheets("kolektif").range("a1").offset( range("d4").value
).pastespecial xlpastevalues, *transpose*:=true
Wassalam,
Kid.
2012/9/9 Kid Mr. <mr.nmkid@gmail.com >
> sheets("kolektif").range("a1").offset( range("d4").value
> ).pastespecial xlpastevalues, trnaspose:=true
sheets("kolektif"
).pastespecial xlpastevalues, *trnaspose*:
menjadi :
sheets("kolektif"
).pastespecial xlpastevalues, *transpose*:
Wassalam,
Kid.
2012/9/9 Kid Mr. <mr.nmkid@gmail.
> sheets("kolektif"
> ).pastespecial xlpastevalues, trnaspose:=true
Sun Sep 9, 2012 7:37 am (PDT) . Posted by:
"Imam Sinurat" sin.ur4t
Yth. Pak Mr Kid dan rekan2
Krn masih awam sekali, hampir 15 jam saya kerjakan ini, mengikuti step-step (istilah kerennya 'algoritma manual' bukan?) yg pak MrKid ajarkan dan melihat contoh makro pada thread 'Makro Filter Sort Data Tak Unik'.
Mohon bpk evaluasi apakah mmg caranya sudah benar atau cuma faktor kebetulan saja hasilnya benar :)
Juga mohon direvisi sintaxnya yang masih kurang efisien.
Option Explicit
Public Sub sisipdata(Optional bvalue As Boolean = False)
Dim rngdata As Range, rnghasil As Range
Dim lrecdata As Long, lrechasil As Long
'0. ke VBE (tekan ALT F11) dan buat sebuah module (bonus :: caranya -> ke menu Insert -> pilih Module)
'RangeData
Set rngdata = Sheet1.Range("b3").CurrentRegion
'beri nama range untuk data tanpa header
rngdata.Offset(1).Resize(rngdata.Rows.Count - 1).Name = "myData"
With Sheet2
'1. Hapus hasil yang lama. Pakai delete xlshiftup juga bisa
.Range("b4").CurrentRegion.Offset(1).Delete xlShiftUp
'2. Copy data dari no sampai nominal1 ke hasil mulai baris pertama
rngdata.Offset(1).Resize(rngdata.Rows.Count - 1, rngdata.Columns.Count - 1).Copy
.Range("b5").PasteSpecial xlPasteValues
Application.CutCopyMode = False
'3. hitung jumlah record + header di hasil dan simpan disebuah variabel
lrecdata = rngdata.Rows.Count - 1
End With
'4. hide kolom nominal1 di data
With Sheet1
.Columns("D:D").EntireColumn.Hidden = True
'5. autofilter data pada kolom nominal2 yang tidak blank ("<>")
rngdata.AutoFilter Field:=4, Criteria1:="<>"
'6. data yang visible (gunakan specialcells visible) di copy dan paste ke hasil dengan offset sebanyak variabel jumlah record (proses 3)
rngdata.Offset(1).Resize(lrecdata).SpecialCells(xlCellTypeVisible).Copy
Sheet2.Range("b4").Offset(lrecdata + 1).PasteSpecial xlPasteValues
'hilangkan garis2 copiedrange dan autofilter serta tampilkan kembali kolom D
Application.CutCopyMode = False
rngdata.AutoFilter
.Columns("D:D").EntireColumn.Hidden = False
End With
'7. hapus data nama di sheet hasil hanya pada hasil paste terakhir (hasil proses 6)
Set rnghasil = Sheet2.Range("b4").CurrentRegion
lrechasil = rnghasil.Rows.Count - 1
With Sheet2
.Range("b4").CurrentRegion.Offset(lrecdata + 1, 1).Resize(lrechasil - lrecdata, 1).ClearContents
'8. sort hasil berdasar kolom No secara menaik
rnghasil.CurrentRegion.Sort .Range("b4"), xlAscending, Header:=xlYes
'9. hasil yang blank (gunakan specialcells celltypeblank) diisi formula style R1C1 berbunyi : "=R[-1]C & ""(*)"""
rnghasil.Offset(1, 1).Resize(lrechasil, 1).SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C&""(*)"""
'10. hasil (seluruh baris ya) di kolom No diberi formulaR1C1 : "=n(R[-1]C)+1"
rnghasil.Offset(1).Resize(lrechasil, 1).FormulaR1C1 = "=N(R[-1]C)+1"
'11. kalkulasi sheet hasil
Sheet2.Calculate
'12. copy paste special values area hasil
rnghasil.CurrentRegion.Copy
Sheet2.Range("b4").PasteSpecial xlPasteValues
Application.CutCopyMode = False
End With
End Sub
Terima kasih sebelumnya, Wassalam
Sinurat
________________________________
Dari: Kid Mr. <mr.nmkid@gmail.com >
Kepada: belajar-excel@yahoogroups.com
Dikirim: Kamis, 6 September 2012 13:00
Judul: Re: [belajar-excel] Makro Sisip Baris
Bagi yang masih bingung caranya, silakan posting dengan judul thread :
VBA xx. nama prosesnya
Contoh :
bingung cara nomor 5, buat thread baru (posting email baru ke milis) dengan subject :
VBA 05. Autofilter data kolom nominal2
Jadi, seluruh proses diharapkan tetap menggunakan data dari Pak Imam dulu, supaya sama dan seragam.
Harapannya bisa mempermudah proses belajar bersama.
Selamat mencoba dan tetap semangat belajar.
Wassalam,
Kid.
2012/9/6 Imam Sinurat <sin.ur4t@yahoo.com >
>
>Salam Be-Excel..
>
>
>Mohon dibantu bagaimana kode makro menyisip baris dan mengisi data yang sesuai.
>
>
>
>Yang diinginkan adalah sbb:
>1. Semua record Tabel 1. ditampilkan kembali pada Tabel 2., baik Nama maupun Nominal1.
>2. Setiap record yang kolom Nominal2 ada nilainya, maka sisipkan
satu baris kosong tepat dibawah record tersebut,
> lalu isi nama yang sesuai dibubuhi tanda "(*)", dan Nominal2.
>
> Terima kasih sebelumnya, wassalam
> Imam F. Sinurat
>
>
Krn masih awam sekali, hampir 15 jam saya kerjakan ini, mengikuti step-step (istilah kerennya 'algoritma manual' bukan?) yg pak MrKid ajarkan dan melihat contoh makro pada thread 'Makro Filter Sort Data Tak Unik'.
Mohon bpk evaluasi apakah mmg caranya sudah benar atau cuma faktor kebetulan saja hasilnya benar :)
Juga mohon direvisi sintaxnya yang masih kurang efisien.
Option Explicit
Public Sub sisipdata(Optional bvalue As Boolean = False)
Dim rngdata As Range, rnghasil As Range
Dim lrecdata As Long, lrechasil As Long
'0. ke VBE (tekan ALT F11) dan buat sebuah module (bonus :: caranya -> ke menu Insert -> pilih Module)
'RangeData
Set rngdata = Sheet1.Range(
'beri nama range untuk data tanpa header
rngdata.Offset(
With Sheet2
'1. Hapus hasil yang lama. Pakai delete xlshiftup juga bisa
.Range("b4")
'2. Copy data dari no sampai nominal1 ke hasil mulai baris pertama
rngdata.Offset(
.Range("b5")
Application.
'3. hitung jumlah record + header di hasil dan simpan disebuah variabel
lrecdata = rngdata.Rows.
End With
'4. hide kolom nominal1 di data
With Sheet1
.Columns("D:
'5. autofilter data pada kolom nominal2 yang tidak blank ("<>")
rngdata.AutoFilter Field:=4, Criteria1:="
'6. data yang visible (gunakan specialcells visible) di copy dan paste ke hasil dengan offset sebanyak variabel jumlah record (proses 3)
rngdata.Offset(
Sheet2.Range(
'hilangkan garis2 copiedrange dan autofilter serta tampilkan kembali kolom D
Application.
rngdata.AutoFilter
.Columns("D:
End With
'7. hapus data nama di sheet hasil hanya pada hasil paste terakhir (hasil proses 6)
Set rnghasil = Sheet2.Range(
lrechasil = rnghasil.Rows.
With Sheet2
.Range("b4")
'8. sort hasil berdasar kolom No secara menaik
rnghasil.CurrentReg
'9. hasil yang blank (gunakan specialcells celltypeblank) diisi formula style R1C1 berbunyi : "=R[-1]C & ""(*)"""
rnghasil.Offset(
'10. hasil (seluruh baris ya) di kolom No diberi formulaR1C1 : "=n(R[-1]C)+
rnghasil.Offset(
'11. kalkulasi sheet hasil
Sheet2.Calculate
'12. copy paste special values area hasil
rnghasil.CurrentReg
Sheet2.Range(
Application.
End With
End Sub
Terima kasih sebelumnya, Wassalam
Sinurat
____________
Dari: Kid Mr. <mr.nmkid@gmail.
Kepada: belajar-excel@
Dikirim: Kamis, 6 September 2012 13:00
Judul: Re: [belajar-excel] Makro Sisip Baris
Bagi yang masih bingung caranya, silakan posting dengan judul thread :
VBA xx. nama prosesnya
Contoh :
bingung cara nomor 5, buat thread baru (posting email baru ke milis) dengan subject :
VBA 05. Autofilter data kolom nominal2
Jadi, seluruh proses diharapkan tetap menggunakan data dari Pak Imam dulu, supaya sama dan seragam.
Harapannya bisa mempermudah proses belajar bersama.
Selamat mencoba dan tetap semangat belajar.
Wassalam,
Kid.
2012/9/6 Imam Sinurat <sin.ur4t@yahoo.
>
>Salam Be-Excel..
>
>
>Mohon dibantu bagaimana kode makro menyisip baris dan mengisi data yang sesuai.
>
>
>
>Yang diinginkan adalah sbb:
>1. Semua record Tabel 1. ditampilkan kembali pada Tabel 2., baik Nama maupun Nominal1.
>2. Setiap record yang kolom Nominal2 ada nilainya, maka sisipkan
satu baris kosong tepat dibawah record tersebut,
> lalu isi nama yang sesuai dibubuhi tanda "(*)", dan Nominal2.
>
> Terima kasih sebelumnya, wassalam
> Imam F. Sinurat
>
>
Sun Sep 9, 2012 7:51 am (PDT) . Posted by:
"Kid Mr." nmkid.family@ymail.com
Insya Allah bukan karena kebetulan, tetapi karena usaha untuk memahami
setiap langkahnya.
Semoga hal ini menjadi modal untuk membuat lebih banyak proses otomasi
lainnya dalam pekerjaan.
Lampiran berikut memanfaatkan pivot table sebagai tabel antara.
Batasan : pengubahan jumlah record karena proses delete baris data tidak
dapat langsung meng-update hasil. Jika ada proses delete data, mohon tekan
refresh all (bisa melalui ribbon Data -> Refresh All)
Wassalam,
Kid.
2012/9/9 Imam Sinurat <sin.ur4t@yahoo.com >
> **
>
>
> Yth. Pak Mr Kid dan rekan2
>
> Krn masih awam sekali, hampir 15 jam saya kerjakan ini, mengikuti
> step-step (istilah kerennya 'algoritma manual' bukan?) yg pak MrKid ajarkan
> dan melihat contoh makro pada thread 'Makro Filter Sort Data Tak Unik'.
> Mohon bpk evaluasi apakah mmg caranya sudah benar atau cuma faktor
> kebetulan saja hasilnya benar :)
> Juga mohon direvisi sintaxnya yang masih kurang efisien.
>
> Option Explicit
> Public Sub sisipdata(Optional bvalue As Boolean = False)
> Dim rngdata As Range, rnghasil As Range
> Dim lrecdata As Long, lrechasil As Long
>
> '0. ke VBE (tekan ALT F11) dan buat sebuah module (bonus :: caranya -> ke
> menu Insert -> pilih Module)
>
> 'RangeData
> Set rngdata = Sheet1.Range("b3").CurrentRegion
>
> 'beri nama range untuk data tanpa header
> rngdata.Offset(1).Resize(rngdata.Rows.Count - 1).Name = "myData"
>
> With Sheet2
>
> '1. Hapus hasil yang lama. Pakai delete xlshiftup juga bisa
> .Range("b4").CurrentRegion.Offset(1).Delete xlShiftUp
>
> '2. Copy data dari no sampai nominal1 ke hasil mulai baris pertama
> rngdata.Offset(1).Resize(rngdata.Rows.Count - 1,
> rngdata.Columns.Count - 1).Copy
> .Range("b5").PasteSpecial xlPasteValues
> Application.CutCopyMode = False
>
> '3. hitung jumlah record + header di hasil dan simpan disebuah variabel
> lrecdata = rngdata.Rows.Count - 1
>
> End With
>
> '4. hide kolom nominal1 di data
>
> With Sheet1
> .Columns("D:D").EntireColumn.Hidden = True
>
>
> '5. autofilter data pada kolom nominal2 yang tidak blank ("<>")
> rngdata.AutoFilter Field:=4, Criteria1:="<>"
>
> '6. data yang visible (gunakan specialcells visible) di copy dan paste ke
> hasil dengan offset sebanyak variabel jumlah record (proses 3)
>
> rngdata.Offset(1).Resize(lrecdata).SpecialCells(xlCellTypeVisible).Copy
> Sheet2.Range("b4").Offset(lrecdata + 1).PasteSpecial xlPasteValues
>
> 'hilangkan garis2 copiedrange dan autofilter serta tampilkan
> kembali kolom D
> Application.CutCopyMode = False
> rngdata.AutoFilter
> .Columns("D:D").EntireColumn.Hidden = False
>
> End With
>
> '7. hapus data nama di sheet hasil hanya pada hasil paste terakhir (hasil
> proses 6)
>
> Set rnghasil = Sheet2.Range("b4").CurrentRegion
> lrechasil = rnghasil.Rows.Count - 1
>
> With Sheet2
> .Range("b4").CurrentRegion.Offset(lrecdata + 1,
> 1).Resize(lrechasil - lrecdata, 1).ClearContents
>
> '8. sort hasil berdasar kolom No secara menaik
> rnghasil.CurrentRegion.Sort .Range("b4"), xlAscending,
> Header:=xlYes
>
> '9. hasil yang blank (gunakan specialcells celltypeblank) diisi formula
> style R1C1 berbunyi : "=R[-1]C & ""(*)"""
> rnghasil.Offset(1, 1).Resize(lrechasil,
> 1).SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C&""(*)"""
>
>
> '10. hasil (seluruh baris ya) di kolom No diberi formulaR1C1 :
> "=n(R[-1]C)+1"
> rnghasil.Offset(1).Resize(lrechasil, 1).FormulaR1C1 =
> "=N(R[-1]C)+1"
>
> '11. kalkulasi sheet hasil
> Sheet2.Calculate
>
> '12. copy paste special values area hasil
> rnghasil.CurrentRegion.Copy
> Sheet2.Range("b4").PasteSpecial xlPasteValues
> Application.CutCopyMode = False
>
> End With
> End Sub
>
> Terima kasih sebelumnya, Wassalam
> Sinurat
> ------------------------------
> *Dari:* Kid Mr. <mr.nmkid@gmail.com >
> *Kepada:* belajar-excel@yahoogroups.com
> *Dikirim:* Kamis, 6 September 2012 13:00
> *Judul:* Re: [belajar-excel] Makro Sisip Baris
>
> Bagi yang masih bingung caranya, silakan posting dengan judul thread :
> VBA xx. nama prosesnya
> Contoh :
> bingung cara nomor 5, buat thread baru (posting email baru ke milis)
> dengan subject :
> VBA 05. Autofilter data kolom nominal2
>
> Jadi, seluruh proses diharapkan tetap menggunakan data dari Pak Imam dulu,
> supaya sama dan seragam.
> Harapannya bisa mempermudah proses belajar bersama.
>
> Selamat mencoba dan tetap semangat belajar.
>
> Wassalam,
> Kid.
>
> 2012/9/6 Imam Sinurat <sin.ur4t@yahoo.com >
>
> **
>
> Salam Be-Excel..
>
> Mohon dibantu bagaimana kode makro menyisip baris dan mengisi data yang
> sesuai.
>
> Yang diinginkan adalah sbb:
> 1. Semua record Tabel 1. ditampilkan kembali pada Tabel 2., baik Nama
> maupun Nominal1.
> 2. Setiap record yang kolom Nominal2 ada nilainya, maka sisipkan satu
> baris kosong tepat dibawah record tersebut,
> lalu isi nama yang sesuai dibubuhi tanda "(*)", dan Nominal2.
>
> Terima kasih sebelumnya, wassalam
> Imam F. Sinurat
>
>
>
>
>
>
>
>
setiap langkahnya.
Semoga hal ini menjadi modal untuk membuat lebih banyak proses otomasi
lainnya dalam pekerjaan.
Lampiran berikut memanfaatkan pivot table sebagai tabel antara.
Batasan : pengubahan jumlah record karena proses delete baris data tidak
dapat langsung meng-update hasil. Jika ada proses delete data, mohon tekan
refresh all (bisa melalui ribbon Data -> Refresh All)
Wassalam,
Kid.
2012/9/9 Imam Sinurat <sin.ur4t@yahoo.
> **
>
>
> Yth. Pak Mr Kid dan rekan2
>
> Krn masih awam sekali, hampir 15 jam saya kerjakan ini, mengikuti
> step-step (istilah kerennya 'algoritma manual' bukan?) yg pak MrKid ajarkan
> dan melihat contoh makro pada thread 'Makro Filter Sort Data Tak Unik'.
> Mohon bpk evaluasi apakah mmg caranya sudah benar atau cuma faktor
> kebetulan saja hasilnya benar :)
> Juga mohon direvisi sintaxnya yang masih kurang efisien.
>
> Option Explicit
> Public Sub sisipdata(Optional bvalue As Boolean = False)
> Dim rngdata As Range, rnghasil As Range
> Dim lrecdata As Long, lrechasil As Long
>
> '0. ke VBE (tekan ALT F11) dan buat sebuah module (bonus :: caranya -> ke
> menu Insert -> pilih Module)
>
> 'RangeData
> Set rngdata = Sheet1.Range(
>
> 'beri nama range untuk data tanpa header
> rngdata.Offset(
>
> With Sheet2
>
> '1. Hapus hasil yang lama. Pakai delete xlshiftup juga bisa
> .Range("b4")
>
> '2. Copy data dari no sampai nominal1 ke hasil mulai baris pertama
> rngdata.Offset(
> rngdata.Columns.
> .Range("b5")
> Application.
>
> '3. hitung jumlah record + header di hasil dan simpan disebuah variabel
> lrecdata = rngdata.Rows.
>
> End With
>
> '4. hide kolom nominal1 di data
>
> With Sheet1
> .Columns("D:
>
>
> '5. autofilter data pada kolom nominal2 yang tidak blank ("<>")
> rngdata.AutoFilter Field:=4, Criteria1:="
>
> '6. data yang visible (gunakan specialcells visible) di copy dan paste ke
> hasil dengan offset sebanyak variabel jumlah record (proses 3)
>
> rngdata.Offset(
> Sheet2.Range(
>
> 'hilangkan garis2 copiedrange dan autofilter serta tampilkan
> kembali kolom D
> Application.
> rngdata.AutoFilter
> .Columns("D:
>
> End With
>
> '7. hapus data nama di sheet hasil hanya pada hasil paste terakhir (hasil
> proses 6)
>
> Set rnghasil = Sheet2.Range(
> lrechasil = rnghasil.Rows.
>
> With Sheet2
> .Range("b4")
> 1).Resize(lrechasil - lrecdata, 1).ClearContents
>
> '8. sort hasil berdasar kolom No secara menaik
> rnghasil.CurrentReg
> Header:=xlYes
>
> '9. hasil yang blank (gunakan specialcells celltypeblank) diisi formula
> style R1C1 berbunyi : "=R[-1]C & ""(*)"""
> rnghasil.Offset(
> 1).SpecialCells(
>
>
> '10. hasil (seluruh baris ya) di kolom No diberi formulaR1C1 :
> "=n(R[-1]C)+
> rnghasil.Offset(
> "=N(R[-1]C)+
>
> '11. kalkulasi sheet hasil
> Sheet2.Calculate
>
> '12. copy paste special values area hasil
> rnghasil.CurrentReg
> Sheet2.Range(
> Application.
>
> End With
> End Sub
>
> Terima kasih sebelumnya, Wassalam
> Sinurat
> ------------
> *Dari:* Kid Mr. <mr.nmkid@gmail.
> *Kepada:* belajar-excel@
> *Dikirim:* Kamis, 6 September 2012 13:00
> *Judul:* Re: [belajar-excel] Makro Sisip Baris
>
> Bagi yang masih bingung caranya, silakan posting dengan judul thread :
> VBA xx. nama prosesnya
> Contoh :
> bingung cara nomor 5, buat thread baru (posting email baru ke milis)
> dengan subject :
> VBA 05. Autofilter data kolom nominal2
>
> Jadi, seluruh proses diharapkan tetap menggunakan data dari Pak Imam dulu,
> supaya sama dan seragam.
> Harapannya bisa mempermudah proses belajar bersama.
>
> Selamat mencoba dan tetap semangat belajar.
>
> Wassalam,
> Kid.
>
> 2012/9/6 Imam Sinurat <sin.ur4t@yahoo.
>
> **
>
> Salam Be-Excel..
>
> Mohon dibantu bagaimana kode makro menyisip baris dan mengisi data yang
> sesuai.
>
> Yang diinginkan adalah sbb:
> 1. Semua record Tabel 1. ditampilkan kembali pada Tabel 2., baik Nama
> maupun Nominal1.
> 2. Setiap record yang kolom Nominal2 ada nilainya, maka sisipkan satu
> baris kosong tepat dibawah record tersebut,
> lalu isi nama yang sesuai dibubuhi tanda "(*)", dan Nominal2.
>
> Terima kasih sebelumnya, wassalam
> Imam F. Sinurat
>
>
>
>
>
>
>
>
Sun Sep 9, 2012 9:38 am (PDT) . Posted by:
"sin.ur4t@yahoo.com" sin.ur4t
Terima kasih pak mrkid oleh2 pivottable-nya, akan saya pelajari perlahan.
Btw ttg syntax 12 step tadi, msh ada yg blm bisa saya lengkapi, yaitu membuat jumlah di bawah baris terakhir. Mohon dibantu trm ksh..
Powered by Telkomsel BlackBerry®
-----Original Message-----
From: "Kid Mr." <mr.nmkid@gmail.com >
Sender: belajar-excel@yahoogroups.com
Date: Sun, 9 Sep 2012 21:50:57
To: <belajar-excel@yahoogroups.com >
Reply-To: belajar-excel@yahoogroups.com
Subject: Re: [belajar-excel] Makro Sisip Baris
Insya Allah bukan karena kebetulan, tetapi karena usaha untuk memahami
setiap langkahnya.
Semoga hal ini menjadi modal untuk membuat lebih banyak proses otomasi
lainnya dalam pekerjaan.
Lampiran berikut memanfaatkan pivot table sebagai tabel antara.
Batasan : pengubahan jumlah record karena proses delete baris data tidak
dapat langsung meng-update hasil. Jika ada proses delete data, mohon tekan
refresh all (bisa melalui ribbon Data -> Refresh All)
Wassalam,
Kid.
2012/9/9 Imam Sinurat <sin.ur4t@yahoo.com >
> **
>
>
> Yth. Pak Mr Kid dan rekan2
>
> Krn masih awam sekali, hampir 15 jam saya kerjakan ini, mengikuti
> step-step (istilah kerennya 'algoritma manual' bukan?) yg pak MrKid ajarkan
> dan melihat contoh makro pada thread 'Makro Filter Sort Data Tak Unik'.
> Mohon bpk evaluasi apakah mmg caranya sudah benar atau cuma faktor
> kebetulan saja hasilnya benar :)
> Juga mohon direvisi sintaxnya yang masih kurang efisien.
>
> Option Explicit
> Public Sub sisipdata(Optional bvalue As Boolean = False)
> Dim rngdata As Range, rnghasil As Range
> Dim lrecdata As Long, lrechasil As Long
>
> '0. ke VBE (tekan ALT F11) dan buat sebuah module (bonus :: caranya -> ke
> menu Insert -> pilih Module)
>
> 'RangeData
> Set rngdata = Sheet1.Range("b3").CurrentRegion
>
> 'beri nama range untuk data tanpa header
> rngdata.Offset(1).Resize(rngdata.Rows.Count - 1).Name = "myData"
>
> With Sheet2
>
> '1. Hapus hasil yang lama. Pakai delete xlshiftup juga bisa
> .Range("b4").CurrentRegion.Offset(1).Delete xlShiftUp
>
> '2. Copy data dari no sampai nominal1 ke hasil mulai baris pertama
> rngdata.Offset(1).Resize(rngdata.Rows.Count - 1,
> rngdata.Columns.Count - 1).Copy
> .Range("b5").PasteSpecial xlPasteValues
> Application.CutCopyMode = False
>
> '3. hitung jumlah record + header di hasil dan simpan disebuah variabel
> lrecdata = rngdata.Rows.Count - 1
>
> End With
>
> '4. hide kolom nominal1 di data
>
> With Sheet1
> .Columns("D:D").EntireColumn.Hidden = True
>
>
> '5. autofilter data pada kolom nominal2 yang tidak blank ("<>")
> rngdata.AutoFilter Field:=4, Criteria1:="<>"
>
> '6. data yang visible (gunakan specialcells visible) di copy dan paste ke
> hasil dengan offset sebanyak variabel jumlah record (proses 3)
>
> rngdata.Offset(1).Resize(lrecdata).SpecialCells(xlCellTypeVisible).Copy
> Sheet2.Range("b4").Offset(lrecdata + 1).PasteSpecial xlPasteValues
>
> 'hilangkan garis2 copiedrange dan autofilter serta tampilkan
> kembali kolom D
> Application.CutCopyMode = False
> rngdata.AutoFilter
> .Columns("D:D").EntireColumn.Hidden = False
>
> End With
>
> '7. hapus data nama di sheet hasil hanya pada hasil paste terakhir (hasil
> proses 6)
>
> Set rnghasil = Sheet2.Range("b4").CurrentRegion
> lrechasil = rnghasil.Rows.Count - 1
>
> With Sheet2
> .Range("b4").CurrentRegion.Offset(lrecdata + 1,
> 1).Resize(lrechasil - lrecdata, 1).ClearContents
>
> '8. sort hasil berdasar kolom No secara menaik
> rnghasil.CurrentRegion.Sort .Range("b4"), xlAscending,
> Header:=xlYes
>
> '9. hasil yang blank (gunakan specialcells celltypeblank) diisi formula
> style R1C1 berbunyi : "=R[-1]C & ""(*)"""
> rnghasil.Offset(1, 1).Resize(lrechasil,
> 1).SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C&""(*)"""
>
>
> '10. hasil (seluruh baris ya) di kolom No diberi formulaR1C1 :
> "=n(R[-1]C)+1"
> rnghasil.Offset(1).Resize(lrechasil, 1).FormulaR1C1 =
> "=N(R[-1]C)+1"
>
> '11. kalkulasi sheet hasil
> Sheet2.Calculate
>
> '12. copy paste special values area hasil
> rnghasil.CurrentRegion.Copy
> Sheet2.Range("b4").PasteSpecial xlPasteValues
> Application.CutCopyMode = False
>
> End With
> End Sub
>
> Terima kasih sebelumnya, Wassalam
> Sinurat
> ------------------------------
> *Dari:* Kid Mr. <mr.nmkid@gmail.com >
> *Kepada:* belajar-excel@yahoogroups.com
> *Dikirim:* Kamis, 6 September 2012 13:00
> *Judul:* Re: [belajar-excel] Makro Sisip Baris
>
> Bagi yang masih bingung caranya, silakan posting dengan judul thread :
> VBA xx. nama prosesnya
> Contoh :
> bingung cara nomor 5, buat thread baru (posting email baru ke milis)
> dengan subject :
> VBA 05. Autofilter data kolom nominal2
>
> Jadi, seluruh proses diharapkan tetap menggunakan data dari Pak Imam dulu,
> supaya sama dan seragam.
> Harapannya bisa mempermudah proses belajar bersama.
>
> Selamat mencoba dan tetap semangat belajar.
>
> Wassalam,
> Kid.
>
> 2012/9/6 Imam Sinurat <sin.ur4t@yahoo.com >
>
> **
>
> Salam Be-Excel..
>
> Mohon dibantu bagaimana kode makro menyisip baris dan mengisi data yang
> sesuai.
>
> Yang diinginkan adalah sbb:
> 1. Semua record Tabel 1. ditampilkan kembali pada Tabel 2., baik Nama
> maupun Nominal1.
> 2. Setiap record yang kolom Nominal2 ada nilainya, maka sisipkan satu
> baris kosong tepat dibawah record tersebut,
> lalu isi nama yang sesuai dibubuhi tanda "(*)", dan Nominal2.
>
> Terima kasih sebelumnya, wassalam
> Imam F. Sinurat
>
>
>
>
>
>
>
>
Btw ttg syntax 12 step tadi, msh ada yg blm bisa saya lengkapi, yaitu membuat jumlah di bawah baris terakhir. Mohon dibantu trm ksh..
Powered by Telkomsel BlackBerry®
-----Original Message-----
From: "Kid Mr." <mr.nmkid@gmail.
Sender: belajar-excel@
Date: Sun, 9 Sep 2012 21:50:57
To: <belajar-excel@
Reply-To: belajar-excel@
Subject: Re: [belajar-excel] Makro Sisip Baris
Insya Allah bukan karena kebetulan, tetapi karena usaha untuk memahami
setiap langkahnya.
Semoga hal ini menjadi modal untuk membuat lebih banyak proses otomasi
lainnya dalam pekerjaan.
Lampiran berikut memanfaatkan pivot table sebagai tabel antara.
Batasan : pengubahan jumlah record karena proses delete baris data tidak
dapat langsung meng-update hasil. Jika ada proses delete data, mohon tekan
refresh all (bisa melalui ribbon Data -> Refresh All)
Wassalam,
Kid.
2012/9/9 Imam Sinurat <sin.ur4t@yahoo.
> **
>
>
> Yth. Pak Mr Kid dan rekan2
>
> Krn masih awam sekali, hampir 15 jam saya kerjakan ini, mengikuti
> step-step (istilah kerennya 'algoritma manual' bukan?) yg pak MrKid ajarkan
> dan melihat contoh makro pada thread 'Makro Filter Sort Data Tak Unik'.
> Mohon bpk evaluasi apakah mmg caranya sudah benar atau cuma faktor
> kebetulan saja hasilnya benar :)
> Juga mohon direvisi sintaxnya yang masih kurang efisien.
>
> Option Explicit
> Public Sub sisipdata(Optional bvalue As Boolean = False)
> Dim rngdata As Range, rnghasil As Range
> Dim lrecdata As Long, lrechasil As Long
>
> '0. ke VBE (tekan ALT F11) dan buat sebuah module (bonus :: caranya -> ke
> menu Insert -> pilih Module)
>
> 'RangeData
> Set rngdata = Sheet1.Range(
>
> 'beri nama range untuk data tanpa header
> rngdata.Offset(
>
> With Sheet2
>
> '1. Hapus hasil yang lama. Pakai delete xlshiftup juga bisa
> .Range("b4")
>
> '2. Copy data dari no sampai nominal1 ke hasil mulai baris pertama
> rngdata.Offset(
> rngdata.Columns.
> .Range("b5")
> Application.
>
> '3. hitung jumlah record + header di hasil dan simpan disebuah variabel
> lrecdata = rngdata.Rows.
>
> End With
>
> '4. hide kolom nominal1 di data
>
> With Sheet1
> .Columns("D:
>
>
> '5. autofilter data pada kolom nominal2 yang tidak blank ("<>")
> rngdata.AutoFilter Field:=4, Criteria1:="
>
> '6. data yang visible (gunakan specialcells visible) di copy dan paste ke
> hasil dengan offset sebanyak variabel jumlah record (proses 3)
>
> rngdata.Offset(
> Sheet2.Range(
>
> 'hilangkan garis2 copiedrange dan autofilter serta tampilkan
> kembali kolom D
> Application.
> rngdata.AutoFilter
> .Columns("D:
>
> End With
>
> '7. hapus data nama di sheet hasil hanya pada hasil paste terakhir (hasil
> proses 6)
>
> Set rnghasil = Sheet2.Range(
> lrechasil = rnghasil.Rows.
>
> With Sheet2
> .Range("b4")
> 1).Resize(lrechasil - lrecdata, 1).ClearContents
>
> '8. sort hasil berdasar kolom No secara menaik
> rnghasil.CurrentReg
> Header:=xlYes
>
> '9. hasil yang blank (gunakan specialcells celltypeblank) diisi formula
> style R1C1 berbunyi : "=R[-1]C & ""(*)"""
> rnghasil.Offset(
> 1).SpecialCells(
>
>
> '10. hasil (seluruh baris ya) di kolom No diberi formulaR1C1 :
> "=n(R[-1]C)+
> rnghasil.Offset(
> "=N(R[-1]C)+
>
> '11. kalkulasi sheet hasil
> Sheet2.Calculate
>
> '12. copy paste special values area hasil
> rnghasil.CurrentReg
> Sheet2.Range(
> Application.
>
> End With
> End Sub
>
> Terima kasih sebelumnya, Wassalam
> Sinurat
> ------------
> *Dari:* Kid Mr. <mr.nmkid@gmail.
> *Kepada:* belajar-excel@
> *Dikirim:* Kamis, 6 September 2012 13:00
> *Judul:* Re: [belajar-excel] Makro Sisip Baris
>
> Bagi yang masih bingung caranya, silakan posting dengan judul thread :
> VBA xx. nama prosesnya
> Contoh :
> bingung cara nomor 5, buat thread baru (posting email baru ke milis)
> dengan subject :
> VBA 05. Autofilter data kolom nominal2
>
> Jadi, seluruh proses diharapkan tetap menggunakan data dari Pak Imam dulu,
> supaya sama dan seragam.
> Harapannya bisa mempermudah proses belajar bersama.
>
> Selamat mencoba dan tetap semangat belajar.
>
> Wassalam,
> Kid.
>
> 2012/9/6 Imam Sinurat <sin.ur4t@yahoo.
>
> **
>
> Salam Be-Excel..
>
> Mohon dibantu bagaimana kode makro menyisip baris dan mengisi data yang
> sesuai.
>
> Yang diinginkan adalah sbb:
> 1. Semua record Tabel 1. ditampilkan kembali pada Tabel 2., baik Nama
> maupun Nominal1.
> 2. Setiap record yang kolom Nominal2 ada nilainya, maka sisipkan satu
> baris kosong tepat dibawah record tersebut,
> lalu isi nama yang sesuai dibubuhi tanda "(*)", dan Nominal2.
>
> Terima kasih sebelumnya, wassalam
> Imam F. Sinurat
>
>
>
>
>
>
>
>
GROUP FOOTER MESSAGE
---------------------------------------------------------------------
bergabung ke milis (subscribe), kirim mail kosong ke:
belajar-excel-subscribe@yahoogroups.com
posting ke milis, kirimkan ke:
belajar-excel@yahoogroups.com
berkunjung ke web milis
http://tech.groups.yahoo.com/group/belajar-excel/messages
melihat file archive / mendownload lampiran
http://www.mail-archive.com/belajar-excel@yahoogroups.com/
atau (sejak 25-Apr-2011) bisa juga di :
http://milis-belajar-excel.1048464.n5.nabble.com/
menghubungi moderators & owners: belajar-excel-owner@yahoogroups.com
keluar dari membership milis (UnSubscribe):
kirim mail kosong ke belajar-excel-unsubscribe@yahoogroups.com
---------------------------------------------------------------------
bergabung ke milis (subscribe), kirim mail kosong ke:
belajar-excel-subscribe@yahoogroups.com
posting ke milis, kirimkan ke:
belajar-excel@yahoogroups.com
berkunjung ke web milis
http://tech.groups.yahoo.com/group/belajar-excel/messages
melihat file archive / mendownload lampiran
http://www.mail-archive.com/belajar-excel@yahoogroups.com/
atau (sejak 25-Apr-2011) bisa juga di :
http://milis-belajar-excel.1048464.n5.nabble.com/
menghubungi moderators & owners: belajar-excel-owner@yahoogroups.com
keluar dari membership milis (UnSubscribe):
kirim mail kosong ke belajar-excel-unsubscribe@yahoogroups.com
---------------------------------------------------------------------
Tidak ada komentar:
Posting Komentar