jiaahhh....bos kid,kan baru bisa copas script nya ajah...puzing dah... br,

odong nando
 


     Pada Selasa, 17 November 2015 15:12, "'Mr. Kid' mr.nm...@gmail.com 
[belajar-excel]" <belajar-excel@yahoogroups.com> menulis:
   

     Hai Odong,

Event change milik worksheet bisa dipergunakan. Langkah pertama adalah 
memeriksa cells yang berubah sesuai kondisi yang Anda tentukan atau tidak. 
Pemeriksaan kondisi dapat dilakukan dengan nested blok IF (coretan conditional 
dimulai dari sini).

Urutan pemeriksaan :
1. jumlah cells yang berubah adalah 1 cell saja alias bukan akibat copas banyak 
cells --> target berisi 1 cell
2. baris Excel dari cell yang berubah > baris Excel header tabel
3. baris Excel yang berubah <= baris Excel terakhir table + 1 (1 adalah baris 
baru)
4. kolom Excel yang berubah adalah kolom tertentu 

Pada nomor 4 ini akan berupa if elseif else atau select case, karena :
a. pemeriksaan pertama adalah kolom Excel bernomor kolom sekian milik kolom J, 
diikuti proses yang dilakukan jika benar bahwa cell yang berubah di kolom J. 
b. pemeriksaan kedua adalah kolom Excel bernomor kolom sekian milik kolom K, 
diikuti proses yang dilakukan jika benar bahwa cell yang berubah di kolom K
c. pemeriksaan ketiga adalah kolom Excel bernomor diantara nomor kolom milik A 
dan nomor kolom milik i, yang diikuti proses yang dilakukan jika benar bahwa 
cell yang berubah ada diantara hal tersebut.

Bagian proses yang dilakukan adalah berupa urutan tindakan berikut :
> dari cell yang berubah -> offset 1 baris ke atas (kebaris sebelumnya) -> 
> offset ke kolom awal yang akan di-copy -> di resize sebanyak 1 baris dan N 
> kolom yang dibutuhkan (N disesuaikan dengan kondisi a,b, atau c) -> di-Copy
> dari cell yang berubah -> offset ke kolom awal lokasi paste -> paste special 
> values dan formatnya

Selamat mencoba

Wassalam,
Kid



2015-11-16 18:07 GMT+07:00 odong nando odongna...@yahoo.com [belajar-excel] 
<belajar-excel@yahoogroups.com>:

     dear all,
ahirnya setelah sekian lama, saya mengerti cara copas skrip even change punya 
si sheet yang di buat bos kid... hehe...tapi setelah pelaksanaan saya jadi 
bingung karena tidak sesuai dengan yang di harapkan.
seharusnya kondisinya :1. bila, pada kolom J di isi (input) maka kolom A:I 
baris sebelumnya akan tercopy kebaris yang baru dan pada saat penginputan pada 
kolom K baris yang sama maka kolom A:J tidak berubah
2. bila pada kolom K di isi (input) maka kolom A:J baris sebelumnya akan 
tercopy kebaris yang baru.3. bila awal penginputan baris terletak antara kolom 
A:I maka kondisi di atas tidak berlaku
  agar lebih jelas makan saya lampirkan percobaan yang telah saya buat
br,

odong nando
 


     Pada Kamis, 22 Januari 2015 19:33, "'Mr. Kid' mr.nm...@gmail.com 
[belajar-excel]" <belajar-excel@yahoogroups.com> menulis:
   

     oouw....

Jika ingin menggunakan VBA, mulailah dari sini dan secara bertahap ke bahasan 
berikutnya.
Jika sudah mulai mempelajarinya sampai seri 005 saja, maka bagian kalimat 
berbnyi :
Script pada event change milik si sheet :
akan mengarahkan Anda untuk ke-VBE, lalu ke object sheet yang akan digunakan 
melalui frame object explorer dalam VBA Project tersebut, kemudian membuat 
prosedur event yang bernama Change, barulah didalam prosedur event yang 
terbentuk (dibuatkan oleh VBE) bisa diisi baris-baris program yang berbunyi :
with target
    if .count=1 then
       if .column=10 then '(kolom J adalah kolom ke-10)
            if len(.offset(1).value)=0 then  'kolom J baris berikutnya yang 
diubah adalah cell kosong -> inputan record baru saja
                 application.enableevents=false
                 
                 'proses disini. barisnya target adalah baris record baru. 
butuh ambil data di baris sebelumnya yang baru
                 range("a1:i1").offset( .row - 1 ).value = 
range("a1:i1").offset( .row - 2 ).value
                 application.enableevents=true
            endif
       endif
    endif
end with

Wassalam,
Kid



2015-01-22 21:57 GMT+11:00 odong nando odongna...@yahoo.com [belajar-excel] 
<belajar-excel@yahoogroups.com>:

     
mohon maaf bos kid...saya bingung.... thx, 


odong nando
 

     Pada Kamis, 22 Januari 2015 17:42, "'Mr. Kid' mr.nm...@gmail.com 
[belajar-excel]" <belajar-excel@yahoogroups.com> menulis:
   

     File lampirannya ndak ada macro nya tuh.

Kalau mau buat sendiri, berikut kira-kira bunyinya :
Script pada event change milik si sheet :
with target
    if .count=1 then
       if .column=10 then '(kolom J adalah kolom ke-10)
            if len(.offset(1).value)=0 then  'kolom J baris berikutnya yang 
diubah adalah cell kosong -> inputan record baru saja
                 application.enableevents=false
                 
                 'proses disini. barisnya target adalah baris record baru. 
butuh ambil data di baris sebelumnya yang baru
                 range("a1:i1").offset( .row - 1 ).value = 
range("a1:i1").offset( .row - 2 ).value
                 application.enableevents=true
            endif
       endif
    endif
end with

Wassalam,
Kid.



On Thu, Jan 22, 2015 at 9:29 PM, odong nando odongna...@yahoo.com 
[belajar-excel] <belajar-excel@yahoogroups.com> wrote:

     bos kid,makro ny eror, apa saya salah pake makronya ya...?mohon di periksa 
bos kid.baru coba ngopi mackro neh...udah salah... hehehe....

thx, 


odong nando
 

     Pada Rabu, 21 Januari 2015 19:03, "'Mr. Kid' mr.nm...@gmail.com 
[belajar-excel]" <belajar-excel@yahoogroups.com> menulis:
   

     Otomasi (Macro) di libre office atau star office bukan dengan VBA. Star 
Office dengan Star Basic. Mirip VBA tetapi full OOP. Jadi, pengguna VBA yang 
tidak terbiasa untuk menulis lengkap nama object beserta properti atau methods 
yang akan digunakan biasanya akan mengawali usaha pembuatan otomasi di star 
atau libre dengan susah payah. Tetapi, jika sungguh-sungguh terus berusaha 
untuk memahami dan mulai memanfaatkan object dalam pemrograman (termasuk untuk 
otomasi atau macro), maka akan terasa banyak kemudahan dalam menyusun script 
yang full OOP.

Wassalam,
Kid.


On Wed, Jan 21, 2015 at 10:52 PM, odong nando odongna...@yahoo.com 
[belajar-excel] <belajar-excel@yahoogroups.com> wrote:

     hehe....iya, bnr bos kid...
sy mo coba dengan VBA, tp kira2 berfungsi di OS Ubuntu dengan open office or 
libre office, ga ya bos kid ?
 thx, 


odong nando
 

     Pada Rabu, 21 Januari 2015 18:31, "'Mr. Kid' mr.nm...@gmail.com 
[belajar-excel]" <belajar-excel@yahoogroups.com> menulis:
   

     Hilangkan saja IF nya.
=M2
Bagaimana ?


On Wed, Jan 21, 2015 at 10:21 PM, odong nando odongna...@yahoo.com 
[belajar-excel] <belajar-excel@yahoogroups.com> wrote:

     maaf bos kid,
saya coba dengan yang formula, tapi masih berkendala, saat nilai idr or usd 
hanya diisi salah satu nya ja maka yang timbul adalah nilai sebelumnya, seperti 
terlampir...tolong pencerahannya bos kid. thx, 


odong nando
 

     Pada Rabu, 21 Januari 2015 17:14, "'Mr. Kid' mr.nm...@gmail.com 
[belajar-excel]" <belajar-excel@yahoogroups.com> menulis:
   

    

 aih.. 5 hari belum ada yang reply ya....

Hai Odong,

Biasanya, data seperti kasus ini dibagi menjadi 2 buah tabel, yaitu tabel 
invoice dan tabel item invoice.
Tabel invoice berisi unique invoice beserta keterangan umum invoice, yaitu 
kolom A sampai i. Jadi, jika ada 3 invoice, maka tabel ini hanya berisi 3 
record meskipun setiap invoice memiliki banyak items.
Tabel item invoice berisi seluruh item setiap invoice, yaitu kolom A dan kolom 
J sampai N disusun berurutan (kolom A berisi nomor invoice seperti kolom A yang 
ada di kasus, kolom B berisi data seperti kolom J yang ada di kasus, dst). 
Dengan demikian, pengisian kolom J sampai N akan ditambahi beban mengisi 1 
kolom saja.

btw,
Pada kondisi dibuat ndak biasa, seperti tabel item invoice yang disertai 
keterangan tentang invoicenya pada kasus ini, maka bisa dengan 2 cara :
1. menggunakan kolom-kolom berformula dikanan tabel.
>> jadi tabel yang ada (misal sekarang ada 14 kolom) akan ditambahi 14 kolom 
>> baru lagi (dalam tabel yang sama), yang recordnya adalah hasil formula IF 
>> sederhana agar komputasi tidak berat. 
>> inputan user di 14 kolom pertama dalam tabel yang telah dimodifikasi ini 
>> akan ada cell kosong di kolom A sampai i ketika user hanya mengisi di kolom 
>> J sampai N.
>> formula di 14 kolom baru yang berisi formula IF akan menyusun bentuk tabel 
>> utuhnya.

2. dengan VBA memanfaatkan event change milik sheet yang ditempati si tabel.
>> susunan script akan tergantung karakteristik penginputan data
>> contoh : input dilakukan dengan cara entry data per record (tidak ada copas 
>> banyak record) dan penyalinan dipicu oleh inputan di kolom J, dengan header 
>> data pasti sebaris di baris 1 Excel dan record dimulai dari A2.
Script pada event change milik si sheet :
with target
    if .count=1 then
       if .column=10 then '(kolom J adalah kolom ke-10)
            if len(.offset(1).value)=0 then  'kolom J baris berikutnya yang 
diubah adalah cell kosong -> inputan record baru saja
                 application.enableevents=false
                 
                 'proses disini. barisnya target adalah baris record baru. 
butuh ambil data di baris sebelumnya yang baru
                 range("a1:i1").offset( .row - 1 ).value = 
range("a1:i1").offset( .row - 2 ).value
                 application.enableevents=true
            endif
       endif
    endif
end with

*** menuju ke baris 10 dari baris 1 adalah offset dari baris 1 sebanyak 9 baris 
alias 10 - 1 baris -> sebabnya .row - 1
*** menuju baris 9 atau 1 baris sebelum baris 10 dari baris 1 adalah offset 
dari baris 1 sebanyak 8 baris alias 10 - 2 -> sebabnya .row-2

Kira-kira demikian.

Wassalam,
Kid.



2015-01-21 20:12 GMT+11:00 odong nando odongna...@yahoo.com [belajar-excel] 
<belajar-excel@yahoogroups.com>:

     
 

dear all,
saya ingin menanyakan tentang table excel, adakah cara menggunakan table excel 
agar lebih kompak dan lebih dinamis lg.
utk lebih jelas bisa lihat contoh terlampir thx, 


odong nando


       

  

       

  

       

  

       

  

       

  

      

  #yiv1282397478 #yiv1282397478 -- #yiv1282397478ygrp-mkp {border:1px solid 
#d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv1282397478 
#yiv1282397478ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv1282397478 
#yiv1282397478ygrp-mkp #yiv1282397478hd 
{color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 
0;}#yiv1282397478 #yiv1282397478ygrp-mkp #yiv1282397478ads 
{margin-bottom:10px;}#yiv1282397478 #yiv1282397478ygrp-mkp .yiv1282397478ad 
{padding:0 0;}#yiv1282397478 #yiv1282397478ygrp-mkp .yiv1282397478ad p 
{margin:0;}#yiv1282397478 #yiv1282397478ygrp-mkp .yiv1282397478ad a 
{color:#0000ff;text-decoration:none;}#yiv1282397478 #yiv1282397478ygrp-sponsor 
#yiv1282397478ygrp-lc {font-family:Arial;}#yiv1282397478 
#yiv1282397478ygrp-sponsor #yiv1282397478ygrp-lc #yiv1282397478hd {margin:10px 
0px;font-weight:700;font-size:78%;line-height:122%;}#yiv1282397478 
#yiv1282397478ygrp-sponsor #yiv1282397478ygrp-lc .yiv1282397478ad 
{margin-bottom:10px;padding:0 0;}#yiv1282397478 #yiv1282397478actions 
{font-family:Verdana;font-size:11px;padding:10px 0;}#yiv1282397478 
#yiv1282397478activity 
{background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv1282397478
 #yiv1282397478activity span {font-weight:700;}#yiv1282397478 
#yiv1282397478activity span:first-child 
{text-transform:uppercase;}#yiv1282397478 #yiv1282397478activity span a 
{color:#5085b6;text-decoration:none;}#yiv1282397478 #yiv1282397478activity span 
span {color:#ff7900;}#yiv1282397478 #yiv1282397478activity span 
.yiv1282397478underline {text-decoration:underline;}#yiv1282397478 
.yiv1282397478attach 
{clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 
0;width:400px;}#yiv1282397478 .yiv1282397478attach div a 
{text-decoration:none;}#yiv1282397478 .yiv1282397478attach img 
{border:none;padding-right:5px;}#yiv1282397478 .yiv1282397478attach label 
{display:block;margin-bottom:5px;}#yiv1282397478 .yiv1282397478attach label a 
{text-decoration:none;}#yiv1282397478 blockquote {margin:0 0 0 
4px;}#yiv1282397478 .yiv1282397478bold 
{font-family:Arial;font-size:13px;font-weight:700;}#yiv1282397478 
.yiv1282397478bold a {text-decoration:none;}#yiv1282397478 dd.yiv1282397478last 
p a {font-family:Verdana;font-weight:700;}#yiv1282397478 dd.yiv1282397478last p 
span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv1282397478 
dd.yiv1282397478last p span.yiv1282397478yshortcuts 
{margin-right:0;}#yiv1282397478 div.yiv1282397478attach-table div div a 
{text-decoration:none;}#yiv1282397478 div.yiv1282397478attach-table 
{width:400px;}#yiv1282397478 div.yiv1282397478file-title a, #yiv1282397478 
div.yiv1282397478file-title a:active, #yiv1282397478 
div.yiv1282397478file-title a:hover, #yiv1282397478 div.yiv1282397478file-title 
a:visited {text-decoration:none;}#yiv1282397478 div.yiv1282397478photo-title a, 
#yiv1282397478 div.yiv1282397478photo-title a:active, #yiv1282397478 
div.yiv1282397478photo-title a:hover, #yiv1282397478 
div.yiv1282397478photo-title a:visited {text-decoration:none;}#yiv1282397478 
div#yiv1282397478ygrp-mlmsg #yiv1282397478ygrp-msg p a 
span.yiv1282397478yshortcuts 
{font-family:Verdana;font-size:10px;font-weight:normal;}#yiv1282397478 
.yiv1282397478green {color:#628c2a;}#yiv1282397478 .yiv1282397478MsoNormal 
{margin:0 0 0 0;}#yiv1282397478 o {font-size:0;}#yiv1282397478 
#yiv1282397478photos div {float:left;width:72px;}#yiv1282397478 
#yiv1282397478photos div div {border:1px solid 
#666666;height:62px;overflow:hidden;width:62px;}#yiv1282397478 
#yiv1282397478photos div label 
{color:#666666;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}#yiv1282397478
 #yiv1282397478reco-category {font-size:77%;}#yiv1282397478 
#yiv1282397478reco-desc {font-size:77%;}#yiv1282397478 .yiv1282397478replbq 
{margin:4px;}#yiv1282397478 #yiv1282397478ygrp-actbar div a:first-child 
{margin-right:2px;padding-right:5px;}#yiv1282397478 #yiv1282397478ygrp-mlmsg 
{font-size:13px;font-family:Arial, helvetica, clean, sans-serif;}#yiv1282397478 
#yiv1282397478ygrp-mlmsg table {font-size:inherit;font:100%;}#yiv1282397478 
#yiv1282397478ygrp-mlmsg select, #yiv1282397478 input, #yiv1282397478 textarea 
{font:99% Arial, Helvetica, clean, sans-serif;}#yiv1282397478 
#yiv1282397478ygrp-mlmsg pre, #yiv1282397478 code {font:115% 
monospace;}#yiv1282397478 #yiv1282397478ygrp-mlmsg * 
{line-height:1.22em;}#yiv1282397478 #yiv1282397478ygrp-mlmsg #yiv1282397478logo 
{padding-bottom:10px;}#yiv1282397478 #yiv1282397478ygrp-msg p a 
{font-family:Verdana;}#yiv1282397478 #yiv1282397478ygrp-msg 
p#yiv1282397478attach-count span {color:#1E66AE;font-weight:700;}#yiv1282397478 
#yiv1282397478ygrp-reco #yiv1282397478reco-head 
{color:#ff7900;font-weight:700;}#yiv1282397478 #yiv1282397478ygrp-reco 
{margin-bottom:20px;padding:0px;}#yiv1282397478 #yiv1282397478ygrp-sponsor 
#yiv1282397478ov li a {font-size:130%;text-decoration:none;}#yiv1282397478 
#yiv1282397478ygrp-sponsor #yiv1282397478ov li 
{font-size:77%;list-style-type:square;padding:6px 0;}#yiv1282397478 
#yiv1282397478ygrp-sponsor #yiv1282397478ov ul {margin:0;padding:0 0 0 
8px;}#yiv1282397478 #yiv1282397478ygrp-text 
{font-family:Georgia;}#yiv1282397478 #yiv1282397478ygrp-text p {margin:0 0 1em 
0;}#yiv1282397478 #yiv1282397478ygrp-text tt {font-size:120%;}#yiv1282397478 
#yiv1282397478ygrp-vital ul li:last-child {border-right:none 
!important;}#yiv1282397478 

  

Kirim email ke