Anda atur saja deh ya...

Untuk melacak kenapanya, ikuti cara kerja script ini :
    *cells(rows.count,3).end(xlup).row*

Di kolom C, ke baris terakhir Excel (baris 1 juta sekian), lalu CTRL panah
atas supaya tahu berhentinya dimana. Itu dia penyebabnya.
Solusinya bagaimana ?
Kosongkan seluruh isi kolom C setelah record terakhir data, atau Anda cari
di arsip lawas milis maupun di blog milis tentang cara menentukan baris
terakhir record data. Terapkan ke baris kode tersebut supaya bisa didapat
baris Excel yang tepat untuk memulai loop.






2015-05-27 17:26 GMT+10:00 Ahmad Syaifullah Lubis syaiful...@hotmail.com
[belajar-excel] <belajar-excel@yahoogroups.com>:

>
>
> Dear Mr Kid,
> maaf, ternyata selain kata "Total" yang menghilang, rupanya baris yang
> berisi "sum" nya juga di Kolom E nya menghilang.
> Tetapi kalau sebelum macro dijalankan kata "total" kalau tidak ada, maka
> fungsi sum di Kolom D dan E tetap ada.
> terima kasih,
> ASL
>
> ------------------------------
> From: belajar-excel@yahoogroups.com
> To: belajar-excel@yahoogroups.com
> Date: Wed, 27 May 2015 07:19:34 +0000
> Subject: RE: [belajar-excel] Menyatukan 2 atau 3 baris menjadi 1 baris data
>
>
>
>
> Dear Mr Kid,
> Terima kasih, sudah saya ganti nilai baris 7 menjadi 8, dan jalan sudah.
> Hanya mengapa di baris terakhir kata "Total"nya hilang ya?
> satu lagi Mr Kid, tambahin dong macro agar berjalan sampai dengan sheet
> yang terakhir pada workbook yang ada. Sungguh, saya gak sanggup untuk
> menambahkan fungsi yang dapat memproses berulang.
> terima kasih,
> ASL.
>
> ------------------------------
> To: belajar-excel@yahoogroups.com
> From: belajar-excel@yahoogroups.com
> Date: Wed, 27 May 2015 17:06:27 +1000
> Subject: Re: [belajar-excel] Menyatukan 2 atau 3 baris menjadi 1 baris data
>
>
>
> Oh berarti baris Saldo di baris 7 ya....
> Kalau gitu for nya jangan sampai 7 atau jangan sampai baris saldo. Sampai
> baris Excel-nya record transaksi pertama saja.
>
> Wassalam,
> Kid
>
>
> 2015-05-27 16:07 GMT+10:00 Ahmad Syaifullah Lubis syaiful...@hotmail.com
> [belajar-excel] <belajar-excel@yahoogroups.com>:
>
>
>
> Mr Kid,
> terima kasih ya Mr Kid, cuman kenapa ya saldo awal muncul angka di kolom
> E, seharusnya kolom D dan E untuk saldo awal kosong. cuman kalau sebelumnya
> saya beri tanda petik (") di kolom D dan E maka waktu diproses macronya
> baru bisa berjalan dengan sempurna.
> Mohon koreksinya Mr Kid.
> terima kasih,
> ASL
>
> ------------------------------
> To: belajar-excel@yahoogroups.com
> From: belajar-excel@yahoogroups.com
> Date: Wed, 27 May 2015 06:07:47 +1000
> Subject: Re: [belajar-excel] Menyatukan 2 atau 3 baris menjadi 1 baris data
>
>
>
> Hai Ahmad,
>
> Kalau dilihat dari previewnya, sepertinya pengen ada tambahan syarat pokok
> kolom D (kolom dikirinya yang kasus lalu, sesuaikan dengan keadaan nyatanya
> bila ada kolom kosong diantaranya yang tak tampak) yang seperti kolom E.
>
> Coba fokus pada blok IF dalam prosedur yang lalu :
> *public *Sub kopi()       'tambahin explicit nya scope ah supaya mudah
> membacanya
>     Dim baris As *double*, x As *long*
>     Dim wadah As String
>     For x = *cells(rows.count,3).end(xlup).row* To 7 Step -1
>
>       if Cells(x, 5).Value<>0 then                                  'poin
> 1 diperjelas keterangannya -> kolom E <> 0
>              if Cells(x, 1).Value = 0
> Then                                     'kondisi dalam poin 1 alias poin
> 1.>.  -> kolom A = 0
>                     wadah = *Cells(x, 3).Value* " " *wadah*
>                     baris = Cells(x, 5).Value
>                     Cells(x, 3).Value = *vbnullstring*
>                     Cells(x, 5).Value =
> *vbnullstring*             endif
>      elseif Cells(x, 1).Value <> 0 then                          'poin
> 2     -> kolom E=0 DAN kolom A <> 0
>                   Cells(x, 3).Value = *Cells(x, 3).Value* " " *wadah*
>                   wadah = *vbnullstring*
>                   Cells(x, 5).Value = baris
>
> else
> 'poin 3     -> kolom E=0  DAN kolom A = 0
>               wadah = *Cells(x, 3).Value* " " *wadah*
>               Cells(x, 3).Value = *vbnullstring*
>      endif
>    Next x
> End Sub
>
>
> *Kondisi baru : (poin 1.5)*
>      Kolom D memiliki karakteristik seperti kolom E
>
>       if Cells(x, 5).Value<>0 then                                  'poin
> 1 diperjelas keterangannya -> kolom E <> 0
>              if Cells(x, 1).Value = 0
> Then                                     'kondisi dalam poin 1 alias poin
> 1.>.  -> kolom A = 0
>                     wadah = *Cells(x, 3).Value* " " *wadah*
>                     baris = Cells(x, 5).Value
>                     Cells(x, 3).Value = *vbnullstring*
>                     Cells(x, 5).Value =
> *vbnullstring*             endif
>       elseif Cells(x, 4).Value<>0 then                                  'poin
> 1.5 diperjelas keterangannya -> kolom D <> 0
>              if Cells(x, 1).Value = 0
> Then                                     'kondisi dalam poin 1 alias poin
> 1.>.  -> kolom A = 0
>                     wadah = *Cells(x, 3).Value* " " *wadah*
>                     baris = Cells(x, 4).Value
>                     Cells(x, 3).Value = *vbnullstring*
>                     Cells(x, 4).Value =
> *vbnullstring*             endif
>
>      elseif Cells(x, 1).Value <> 0 then                          'poin
> 2     -> kolom E=0 DAN kolom A <> 0
>                   Cells(x, 3).Value = *Cells(x, 3).Value* " " *wadah*
>                   wadah = *vbnullstring*
>  *                 Cells(x, 5).Value = baris*
>
> else
> 'poin 3     -> kolom E=0  DAN kolom A = 0
>               wadah = *Cells(x, 3).Value* " " *wadah*
>               Cells(x, 3).Value = *vbnullstring*
>      endif
>
> *Sampai disini terjadi masalah berikut :*
> *a.* nilai dalam variabel 'baris' tidak diketahui sumbernya, yaitu dari
> nilai kolom E (akibat mengerjakan poin 1) atau dari kolom D (akibat
> mengerjakan poin 1.5)
>
> *b.* penulisan nilai yang disimpan dalam variabel bernama 'baris' adalah
> ke kolom E saja (*lihat yang merah*)
>
> Solusi untuk masalah untuk kasus :
> a. disediakan sebuah variabel penyimpan nomor kolom sumber nilai yang
> diambil. Jadi tugasnya menyimpan nilai 5 kalau mengambil nilai kolom E
> karena mengerjakan poin 1, atau menyimpan nilai 4 kalau mengambil nilai
> kolom D karena mengerjakan poin 1.5. Maka diblok poin 1 dan blok poin 1.5
> nantinya akan diberi baris kode pengisian nilai 5 atau 4 tersebut.
>
> b. karena proses penulisan menggunakan posisi nomor row dan nomor column
> seperti *Cells(x, 5).Value* yang berarti di cells row ke-x di column 5,
> berarti angka 5 pada baris tersebut bisa diganti dengan variabel penyimpan
> nilai sumber kolom (5 atau 4) yang menjadi solusi poin a diatas tadi.
>
> Proses penerapan solusi :
> 1. butuh sebuah variabel baru penyimpan nilai 5 atau 4
> > butuh deklarasi variabel baru yang datatype untuk numerik bilangan bulat
> saja, bisa byte, integer, atau long
> > misal dipilih datatype Long supaya native dengan bit applikasi office
> yang digunakan yang 32 bit
> > nama variabelnya misal diberi nama lKolomSumber
> > bunyi deklarasinya :
>
> *       dim lKolomSumber as long*
> 2. setiap blok poin diberi baris kode untuk set nilai 5 atau 4 sesuai
> kondisi ke variabel baru tersebut
> > blok poin 1 dulu  -> berdasar kolom E <> 0
>     * poin 1 menggunakan kolom E alias kolom nomor 5 sebagai kondisi
>     * berarti nilai variabel lKolomSumber diblok ini harus diisi dengan
> nilai 5
>     * prosesnya ditulis tepat setelah mengambil nilai dari kolom E
>     * berarti, setelah kode berbunyi :
>                    baris = Cells(x, 5).Value
>       diberi proses pengisian nilai 5 ke variabel lKolomSumber dengan
> bunyi berikut :
>                    lKolomSumber=5
>
> > blok poin 1.5 -> berdasar kolom D <> 0
>     * poin 1 menggunakan kolom D alias kolom nomor 4 sebagai kondisi
>     * berarti nilai variabel lKolomSumber diblok ini harus diisi dengan
> nilai 4
>     * prosesnya ditulis tepat setelah mengambil nilai dari kolom D
>     * berarti, setelah kode berbunyi :
>                    baris = Cells(x, 4).Value
>       diberi proses pengisian nilai 4 ke variabel lKolomSumber dengan
> bunyi berikut :
>                    lKolomSumber=4
>
> 3. Penulisan isi variabel bernama 'baris' ke suatu cells dilakukan sesuai
> kolom sumbernya
> > kode penulisan nilai yang sudah ada dalam prosedur berbunyi :
>                     *Cells(x, 5).Value = baris*
> > pada kode di atas, kolom sumbernya ditunjukkan dengan angka *5*
> > berarti bagian angka *5* itulah yang harus diganti dengan variabel
> penyimpan nomor kolom sumbernya (nama variabelnya lKolomSumber kan ya)
> > berarti bunyi kodenya akan menjadi :
>                     *Cells(x, **lKolomSumber).Value = baris*
>
> Jadi prosedur yang sudah dikembangkan akan menjadi :
>
> *public *Sub kopi()       'tambahin explicit nya scope ah supaya mudah
> membacanya
>
>     Dim baris As *double*, x As *long*
>     Dim wadah As String
>     *dim lKolomSumber as long*
>     'private cop as object    'dumb private object
>     For x = *cells(rows.count,3).end(xlup).row* To 7 Step -1
>
>       if Cells(x, 5).Value<>0 then
> ''poin 1 diperjelas keterangannya -> kolom E <> 0
>              if Cells(x, 1).Value = 0
> Then                                     'kondisi dalam poin 1 alias poin
> 1.>.  -> kolom A = 0
>                     wadah = *Cells(x, 3).Value* " " *wadah*
>                     baris = Cells(x, 5).Value
>                     *lKolomSumber =5*
>                     Cells(x, 3).Value = *vbnullstring*
>                     Cells(x, 5).Value =
> *vbnullstring*             endif
>
>       elseif Cells(x, 4).Value<>0 then                                  "poin
> 1.5 diperjelas keterangannya -> kolom D <> 0
>              if Cells(x, 1).Value = 0
> Then                                     'kondisi dalam poin 1 alias poin
> 1.>.  -> kolom A = 0
>                     wadah = *Cells(x, 3).Value* " " *wadah*
>                     baris = Cells(x, 4).Value
>                     *lKolomSumber =4*
>                     Cells(x, 3).Value = *vbnullstring*
>                     Cells(x, 4).Value =
> *vbnullstring*             endif
>
>      elseif Cells(x, 1).Value <> 0 then                          ''poin
> 2     -> kolom E=0 DAN kolom A <> 0
>                   Cells(x, 3).Value = *Cells(x, 3).Value* " " *wadah*
>                   wadah = *vbnullstring*
>  *                 Cells(x, **lKolomSumber ).Value = baris*
>
> else
> ''poin 3     -> kolom E=0  DAN kolom A = 0
>               wadah = *Cells(x, 3).Value* " " *wadah*
>               Cells(x, 3).Value = *vbnullstring*
>      endif
>
>    Next x
>
> End Sub
>
>
>
> ;)
>
> Wassalam,
> Kid
>
>
>
>
>
>
>
>
>
>
>
>    
>
      • Re:... Toby kenzo tobyke...@yahoo.co.id [belajar-excel]
      • Re:... 'Mr. Kid' mr.nm...@gmail.com [belajar-excel]
      • Re:... Nang Agus nanga...@gmail.com [belajar-excel]
      • RE:... Ahmad Syaifullah Lubis syaiful...@hotmail.com [belajar-excel]
      • Re:... Toby kenzo tobyke...@yahoo.co.id [belajar-excel]
      • Re:... 'Mr. Kid' mr.nm...@gmail.com [belajar-excel]
      • RE:... Ahmad Syaifullah Lubis syaiful...@hotmail.com [belajar-excel]
      • Re:... 'Mr. Kid' mr.nm...@gmail.com [belajar-excel]
      • RE:... Ahmad Syaifullah Lubis syaiful...@hotmail.com [belajar-excel]
      • RE:... Ahmad Syaifullah Lubis syaiful...@hotmail.com [belajar-excel]
      • Re:... 'Mr. Kid' mr.nm...@gmail.com [belajar-excel]
      • RE:... Ahmad Syaifullah Lubis syaiful...@hotmail.com [belajar-excel]
      • Re:... 'Mr. Kid' mr.nm...@gmail.com [belajar-excel]
  • RE: [belajar... Ahmad Syaifullah Lubis syaiful...@hotmail.com [belajar-excel]

Kirim email ke