Memasukkan Fungsi Rumus dalam VBA

  1. 5 minggu lalu

    Asslamualaikum dan Salam Sejahtera untuk semuany

    Kepada para suhu yg mahir excel mohon bantuannya untuk mengajari saya bagaimana caranya memasukkan fungsi rumus yang telah saya buat ke dalam data base agar bisa dimasukkan kedalam format excel macro. Krn kapasitas file akan besar jika menggunakan rumus manual pada umumnya. Sample rumus dalam sheet database yg ditandai warna kuning dan formula untuk sheet print outnya. Terima kasih atas bantuannya, semoga saya jg bisa menambah ilmu di forum ini

    @Yanuary Bastian

    Mohon bantuannya untuk koreksi kembali, krn ada beberapa sheet ada yg error. Data yg terinput jd hilang dan beberapa kolom tidak mau menampilkan data yg diminta...

    sebenarnya skrip yang anda susun sudah benar, penyebab error karena data di sheet UNIT terhapus. penyebab terhapus adalah karena anda menjalankan skrip untuk sheet PRINT saat sheet UNIT sedang aktif. lebih tepatnya pada baris ini :

    Range("B14:Q213").ClearContents 


    jika anda tidak menyebutkan nama sheet nya maka yang akan terhapus adalah B14:Q213 pada sheet yang sedang aktif. jika ingin baris ini berlaku hanya untuk Sheet Print maka edit menjadi :

    sheets("PRINT").Range("B14:Q213").ClearContents

    ...Dan apakah bisa menampilkan data otomatis tanpa harus menekan atau menggunakan tombol makronya...

    cek file terlampir, sudah saya perbaiki dan dan tambahkan contoh ini untuk sheet PRINT. anda hanya perlu mengganti nilai di R1

    demikian

  2. Di sunting 5 minggu lalu oleh manweljs_

    @Yanuary Bastian

    setelah saya pelajari file anda, ada beberapa formula yang sebenarnya tidak perlu jika anda ingin menggunakan makro. terlampir contoh yang sudah saya edit2 sedikit. silahkan dipelajari dan di kembangkan

  3. baik terima kasih saya pelajari dahulu ya

  4. Sdr @manweljs_ untuk keterangan baris terakhir tersebut maksudnya diisi angka baris terakhir (misal : 25000) atau berdasarkan range nya (A12:A2500). Mohon pencerahannya, krn saya baru belajar utk VBA excel nya

  5. @Yanuary Bastian itu untuk mencari baris terakhir

  6. Mohon bantuannya untuk koreksi kembali, krn ada beberapa sheet ada yg error. Data yg terinput jd hilang dan beberapa kolom tidak mau menampilkan data yg diminta. ????. Dan apakah bisa menampilkan data otomatis tanpa harus menekan atau menggunakan tombol makronya. Terima kasih sebelumnya atas bantuan dan ilmunya

  7. manweljs_

    Agu 23 Terverifikasi Jawaban Terpilih + 11.070 Poin
    Di sunting 5 minggu lalu oleh manweljs_

    @Yanuary Bastian

    Mohon bantuannya untuk koreksi kembali, krn ada beberapa sheet ada yg error. Data yg terinput jd hilang dan beberapa kolom tidak mau menampilkan data yg diminta...

    sebenarnya skrip yang anda susun sudah benar, penyebab error karena data di sheet UNIT terhapus. penyebab terhapus adalah karena anda menjalankan skrip untuk sheet PRINT saat sheet UNIT sedang aktif. lebih tepatnya pada baris ini :

    Range("B14:Q213").ClearContents 


    jika anda tidak menyebutkan nama sheet nya maka yang akan terhapus adalah B14:Q213 pada sheet yang sedang aktif. jika ingin baris ini berlaku hanya untuk Sheet Print maka edit menjadi :

    sheets("PRINT").Range("B14:Q213").ClearContents

    ...Dan apakah bisa menampilkan data otomatis tanpa harus menekan atau menggunakan tombol makronya...

    cek file terlampir, sudah saya perbaiki dan dan tambahkan contoh ini untuk sheet PRINT. anda hanya perlu mengganti nilai di R1

    demikian

  8. Baik, akan saya pelajari kembali

  9. Mohon bantuannya kembali suhu, sheet printnya error padahal hanya rubah sedikit formulanya dari format sebelumnya.

  10. @Yanuary Bastian

    kalo yang dimaksud error itu adalah makro tidak berjalan otomatis saat Nilai pada T1 diganti maka, pada module worksheet objectnya, pastekan skrip berikut:

    Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, [t1]) Is Nothing Then Call untukprint
    End Sub

    sheet print.PNG

  11. @manweljs_

    Jika kalkulasi datanya lama di sheet print itu karna faktor apa ya. krn utk sample yg di awal begitu data inputnya dimasukkan semuanya lama untuk menampilkan valuenya pada sheet print.

  12. @Yanuary Bastian

    lamanya seperti apa? disaya masih kategori normal menurut saya. btw, data anda menjadi besar karena sel yang 'aktif' itu sampai sel paling paling paling paling bawah. saya bingung bagaimana cara anda menginput data sampai bisa terpakai semua baris seperti itu.

    terlampir file yang sudah hapus baris yang tidak perlu, sehingga dari file anda yang ukuran 2mb lebih sekarang hanya 50kb

  13. jika dikalkulasi dr data yg masuk di setiap bulannya itu bisa mencapai 25000 row utk database nya. krn di awal saya masih menggunakan rumus yg konvensional. dan akhir-akhir ini saya mulai tertarik utk belajar menggunakan excel macro krn filenya lebih ringan. makanya saya dapat forum ini untuk belajar

  14. @Yanuary Bastian

    karena perintah looping nya itu menggunakan For Each sel jadi excel akan melakukan pengecekan data untuk setiap sel 1 per 1 dalam range yang ditentukan tersebut. kalo mau disiasati dengan difilter dahulu, jadi loopingnya dibuat khusus yg visible aja (jadi lebih sedikit sel yang diproses).

    Demikian

  15. Baik terima kasih atas masukannya, krn masih newbie jd bnyak yg harus dipelajari

  16. Di sunting 5 minggu lalu oleh manweljs_

    @Yanuary Bastian Baik terima kasih atas masukannya, krn masih newbie jd bnyak yg harus dipelajari

    kalo belum ketemu caranya, cek di file terlampir

  17. 3 minggu lalu

    Mohon bantuannya suhu, di sheet print data yg tampil lari jauh ke bawah. mohon bantuannya untuk koreksi

  18. Di sunting 3 minggu lalu oleh Yanuary Bastian

    Mohon bantuannya suhu, di sheet print data yg tampil lari jauh ke bawah. mohon bantuannya untuk koreksi

  19. manweljs_

    Sep 6 Terverifikasi + 11.070 Poin

    @Yanuary Bastian Mohon bantuannya suhu, di sheet print data yg tampil lari jauh ke bawah. mohon bantuannya untuk koreksi

    pada baris :

                y = Range("B215").End(xlUp).Row + 1
    

    edit menjadi :

                y = Range("B124").End(xlUp).Row + 1

 

atau Mendaftar untuk ikut berdiskusi!