Rumah Media Sosial 10 Cara untuk Mempercepat Macro Anda - dummies

10 Cara untuk Mempercepat Macro Anda - dummies

Daftar Isi:

Video: Script SG Tahan Cepat No Miss 12x shot 8 1/4 detik 2025

Video: Script SG Tahan Cepat No Miss 12x shot 8 1/4 detik 2025
Anonim

Karena makro Excel Anda menjadi semakin kuat dan kompleks, Anda mungkin mendapati bahwa mereka kehilangan performa. Saat membahas macro, kata performance biasanya sama dengan speed . Kecepatan adalah seberapa cepat prosedur VBA Anda melakukan tugas yang mereka inginkan. Berikut adalah sepuluh cara untuk membantu agar makro Excel Anda tetap berjalan pada tingkat kinerja optimalnya.

Menghentikan perhitungan lembar

Tahukah Anda bahwa setiap kali sel yang mempengaruhi formula di spreadsheet Anda diubah atau dimanipulasi, Excel menghitung ulang seluruh lembar kerja? Dalam lembar kerja yang memiliki sejumlah besar formula, perilaku ini dapat secara drastis memperlambat makro Anda.

Anda bisa menggunakan Aplikasi. Perhitungan properti untuk memberitahu Excel untuk beralih ke mode perhitungan manual. Saat buku kerja dalam mode perhitungan manual, buku kerja tidak akan menghitung ulang sampai Anda secara eksplisit memicu perhitungan dengan menekan tombol F9.

Tempatkan Excel ke dalam mode perhitungan manual, jalankan kode Anda, dan kemudian beralih kembali ke mode perhitungan otomatis.

Aplikasi Sub Macro1 (). Perhitungan = xlCalculationManual 'Tempatkan kode makro Anda di sini Aplikasi. Perhitungan = xlCalculationAutomatic End Sub

Mengatur mode perhitungan kembali ke xlCalculationAutomatic secara otomatis akan memicu perhitungan ulang lembar kerja, jadi tidak perlu menekan tombol F9 setelah makro Anda berjalan.

Menonaktifkan pemutakhiran layar layar

Anda mungkin memperhatikan bahwa saat makro Anda berjalan, layar Anda cukup berkedip. Berkedip-kedip ini adalah Excel mencoba untuk menggambar ulang layar untuk menunjukkan kondisi lembar kerja saat ini. Sayangnya, setiap kali Excel menggandakan layar, dibutuhkan sumber daya memori.

Anda bisa menggunakan Aplikasi. ScreenUpdating properti untuk menonaktifkan pembaruan layar sampai makro Anda selesai. Menonaktifkan pembaruan layar menghemat waktu dan sumber daya, membiarkan makro Anda berjalan sedikit lebih cepat. Setelah kode makro Anda selesai berjalan, Anda dapat menghidupkan kembali pemutakhiran layar.

Aplikasi Sub Macro1 (). Perhitungan = xlCalculationManual Application. ScreenUpdating = Salah 'Tempatkan kode makro anda disini Aplikasi. Perhitungan = xlCalculationAutomatic Application. ScreenUpdating = True End Sub

Setelah Anda menyetel properti ScreenUpdating kembali ke True, Excel secara otomatis akan memicu redraw layar.

Mematikan pembaruan status bar

Bilah status Excel, yang muncul di bagian bawah jendela Excel, biasanya menampilkan kemajuan tindakan tertentu di Excel.Jika makro Anda bekerja dengan banyak data, bilah status akan mengambil beberapa sumber.

Penting untuk dicatat bahwa mematikan pemutaran layar terpisah dari mematikan tampilan status bar. Status bar akan terus diperbarui meskipun Anda menonaktifkan pemutakhiran layar. Anda bisa menggunakan Aplikasi. Properti DisplayStatusBar untuk sementara menonaktifkan pembaruan status bar, semakin meningkatkan kinerja makro Anda:

Aplikasi Sub Macro1 (). Perhitungan = xlCalculationManual Application. ScreenUpdating = Aplikasi Salah. DisplayStatusBar = Salah 'Tempatkan kode makro Anda di sini Aplikasi. Perhitungan = xlCalculationAutomatic Application. ScreenUpdating = Aplikasi Benar DisplayStatusBar = True End Sub

Mengatakan Excel untuk mengabaikan kejadian

Anda dapat menerapkan makro sebagai prosedur acara, memberi tahu Excel untuk menjalankan kode tertentu saat lembar kerja atau buku kerja berubah.

Terkadang, macro standar membuat perubahan yang akan memicu prosedur acara. Misalnya, jika Anda memiliki makro standar yang memanipulasi beberapa sel di Sheet1, setiap kali sel pada lembar itu diubah, makro Anda harus berhenti sementara saat acara Worksheet_Change berjalan.

Anda dapat menambahkan tingkat peningkatan kinerja lainnya dengan menggunakan properti EnableEvents untuk memberi tahu Excel untuk mengabaikan kejadian saat makro Anda berjalan.

Tetapkan properti EnableEvents ke False sebelum menjalankan makro Anda. Setelah kode makro selesai dijalankan, Anda dapat mengatur properti EnableEvents kembali ke True.

Aplikasi Sub Macro1 (). Perhitungan = xlCalculationManual Application. ScreenUpdating = Aplikasi Salah. DisplayStatusBar = Aplikasi Salah. EnableEvents = False 'Tempatkan kode makro Anda di sini Aplikasi. Perhitungan = xlCalculationAutomatic Application. ScreenUpdating = Aplikasi Benar DisplayStatusBar = Aplikasi yang Benar EnableEvents = True End Sub

Menyembunyikan jeda halaman

Setiap kali makro Anda memodifikasi jumlah baris, mengubah jumlah kolom, atau mengubah penyiapan halaman dari lembar kerja, Excel dipaksa untuk mengambil waktu untuk menghitung ulang jeda halaman yang ditunjukkan. di atas lembaran

Anda dapat menghindari perilaku ini hanya dengan menyembunyikan jeda halaman sebelum memulai makro Anda.

Setel properti lembar DisplayPageBreaks ke False untuk menyembunyikan jeda halaman. Jika Anda ingin terus menampilkan jeda halaman setelah makro berjalan, atur properti lembar DisplayPageBreaks kembali ke True.

Aplikasi Sub Macro1 (). Perhitungan = xlCalculationManual Application. ScreenUpdating = Aplikasi Salah. DisplayStatusBar = Aplikasi Salah. EnableEvents = False Activesheet. DisplayPageBreaks = False 'Tempatkan kode makro Anda di sini Aplikasi. Perhitungan = xlCalculationAutomatic Application. ScreenUpdating = Aplikasi Benar DisplayStatusBar = Aplikasi yang Benar EnableEvents = True Activesheet. DisplayPageBreaks = True End Sub

Menangguhkan update tabel pivot

Jika makro Anda memanipulasi tabel pivot yang berisi sumber data yang besar, Anda mungkin mengalami kinerja buruk saat melakukan hal-hal seperti menambahkan atau memindahkan bidang pivot secara dinamis.

Anda dapat memperbaiki kinerja makro Anda dengan menunda penghitungan ulang tabel pivot sampai semua perubahan bidang pivot telah dilakukan. Cukup atur PivotTable. ManualUpdate properti ke True untuk menunda penghitungan ulang, jalankan kode makro Anda, dan kemudian atur PivotTable. Properti ManualUpdate kembali ke False untuk memicu penghitungan ulang.

Sub Macro1 () ActiveSheet. PivotTables ("PivotTable1"). ManualUpdate = True 'Tempatkan kode makro Anda di sini ActiveSheet. PivotTables ("PivotTable1"). ManualUpdate = Sub Akhir yang Salah

Steering clear of copy and paste

Penting untuk diingat bahwa meskipun Macro Recorder menghemat waktu dengan menulis kode VBA untuk Anda, kode tersebut tidak selalu menulis kode yang paling efisien. Contoh utama adalah bagaimana Macro Recorder menangkap tindakan copy-dan-paste yang Anda lakukan saat merekam.

Anda dapat memberi dorongan pada makro Anda dengan memotong perantara dan melakukan salinan langsung dari satu sel ke sel tujuan. Kode alternatif ini menggunakan argumen Tujuan untuk memotong clipboard dan menyalin isi sel A1 langsung ke sel B1. Rentang

("A1"). Copy Destination: = Range ("B1")

Jika Anda hanya perlu menyalin nilai (bukan format atau formula), Anda dapat meningkatkan kinerja lebih banyak lagi dengan menghindari metode Copy bersama-sama. Cukup atur nilai sel tujuan ke nilai yang sama yang ditemukan di sel sumber. Metode ini kira-kira 25 kali lebih cepat daripada menggunakan metode Copy:

Range ("B1"). Nilai = Rentang ("A1"). Nilai

Jika Anda hanya perlu menyalin formula dari satu sel ke sel lainnya (bukan nilai atau format), Anda dapat mengatur rumus sel tujuan ke formula yang sama yang terdapat dalam sel sumber: Range 99 (991)). Formula = Rentang ("A1"). Formula

Dengan menggunakan pernyataan Dengan

Saat merekam makro, Anda akan sering memanipulasi objek yang sama lebih dari satu kali. Anda dapat menghemat waktu dan meningkatkan kinerja dengan menggunakan pernyataan With untuk melakukan beberapa tindakan pada objek tertentu dalam satu tembakan.

Pernyataan dengan yang digunakan dalam contoh berikut memberitahu Excel untuk menerapkan semua perubahan format sekaligus:

With Range ("A1"). Font. Bold = Benar Italic = Benar Underline = xlUnderlineStyleSingle End With

Masuk ke kebiasaan tindakan chunking ke dalam Dengan pernyataan tidak hanya akan membuat makro Anda berjalan lebih cepat namun juga memudahkan untuk membaca kode makro Anda.

Menghindari metode Select

Macro Recorder menyukai penggunaan metode Select untuk memilih objek secara eksplisit sebelum melakukan tindakan terhadapnya. Umumnya tidak perlu memilih objek sebelum bekerja dengan mereka. Sebenarnya, Anda dapat secara dramatis memperbaiki kinerja makro dengan tidak menggunakan metode Pilih.

Setelah merekam makro Anda, biasakan mengubah kode yang dihasilkan untuk menghapus metode Pilih. Dalam kasus ini, kode yang dioptimalkan akan terlihat seperti berikut:

Sheets ("Sheet1"). Rentang ("A1"). FormulaR1C1 = "1000" Lembar ("Lembar2"). Rentang ("A1"). FormulaR1C1 = "1000" Lembar ("Lembar3"). Rentang ("A1"). FormulaR1C1 = "1000"

Perhatikan bahwa tidak ada yang dipilih.Kode hanya menggunakan hirarki objek untuk menerapkan tindakan yang dibutuhkan.

Membatasi perjalanan ke lembar kerja

Cara lain untuk mempercepat makro Anda adalah dengan membatasi jumlah data lembar kerja referensi Anda di kode Anda. Selalu kurang efisien untuk mengambil data dari lembar kerja daripada dari memori. Artinya, makro Anda akan berjalan lebih cepat jika tidak harus berulang kali berinteraksi dengan lembar kerja.

Misalnya, kode sederhana berikut memaksa VBA untuk terus kembali ke Lembar ("Sheet1"). Range ("A1") untuk mendapatkan jumlah yang dibutuhkan untuk perbandingan yang dilakukan dalam pernyataan If:

Untuk ReportMonth = 1 To 12 If Range ("A1"). Value = ReportMonth Then MsgBox 1000000 / ReportMonth End Jika Next ReportMonth

Metode yang jauh lebih efisien adalah dengan menyimpan nilai pada Sheets ("Sheet1"). Range ("A1") ke variabel yang disebut MyMonth. Dengan cara ini, kode tersebut mereferensi variabel MyMonth dan bukan lembar kerja:

Dim MyMonth sebagai Integer MyMonth = Range ("A1"). Nilai Untuk ReportMonth = 1 To 12 Jika MyMonth = ReportMonth Kemudian MsgBox 1000000 / ReportMonth End If Next ReportMonth

Pertimbangkan untuk memanfaatkan variabel untuk bekerja dengan data di memori dibandingkan dengan lembar kerja referensi langsung.
10 Cara untuk Mempercepat Macro Anda - dummies

Pilihan Editor

Kantor 2011 untuk Mac: Membuat Tabel dengan Kotak Dialog atau Teks - dummies

Kantor 2011 untuk Mac: Membuat Tabel dengan Kotak Dialog atau Teks - dummies

Sementara ada cara baru untuk membuat tabel di Office 2011 untuk Mac, Anda masih bisa menggunakan teknik stand-by. Menu yang familiar masih bekerja di Office 2011 untuk Mac, dan inilah buktinya. Dialog meja semuanya masih ada di sana: Di Word, pilih Table → Insert → Table; Sebagai alternatif, pada tab Tabel Ribbon, di Tabel Pilihan ...

Kantor 2011 untuk Mac: Melepaskan Command Toolbar - dummies

Kantor 2011 untuk Mac: Melepaskan Command Toolbar - dummies

Apakah Anda menggunakan Office 2011 untuk Mac atau Produk Microsoft Office lainnya, toolbar Anda bisa sangat berantakan. Setiap kali Anda merasa perlu untuk men-tweak antarmuka aplikasi Microsoft Office, Anda perlu memanggil dialog Customize Toolbars and Menus. Ini adalah dialog super kuat di Word, Excel, dan PowerPoint yang memungkinkan Anda ...

Kantor 2011 untuk Mac: Berbagi Toolbar dan Menu - dummies

Kantor 2011 untuk Mac: Berbagi Toolbar dan Menu - dummies

Setelah Anda menyesuaikan Office 2011 Anda bilah alat dan antarmuka, Anda dapat berbagi penyesuaian dengan orang lain. Namun, pastikan bahwa Anda menasihati orang-orang yang telah Anda lakukan sebelum membagikan dokumen Anda dengannya; Jika tidak, mereka mungkin akan terkejut saat mereka membuka dokumen Anda dan melihat susunan toolbar atau menu yang berbeda dari pada apa ...

Pilihan Editor

Penting Office 2007 Commands - dummies

Penting Office 2007 Commands - dummies

Anda dapat membuat program Office 2007 lebih mudah jika Anda menggunakan pintasan sederhana ini. Perintah-perintah ini, seperti mengurungkan kesalahan dan memperbesar dan memperkecil akan membantu Anda menghemat waktu. Memasuki simbol: Untuk memasukkan simbol atau karakter asing yang tidak ada pada keyboard Anda, masuk ke tab Insert dan klik Symbol ...

Menyesuaikan Perintah Menu di Office 2003 - dummies

Menyesuaikan Perintah Menu di Office 2003 - dummies

Office 2003 menyediakan dua teknik untuk menyesuaikan menu dan perintah menu. Anda bisa memulai dari kotak dialog Rearrange Commands atau menggunakan metode drag-and-drop. Teruslah membaca. Menangani perintah menu di kotak dialog Rearrange Commands Teknik tombol Options Toolbar untuk menangani tombol toolbar bagus dan keren, tapi bagaimana jika Anda ingin ...

Pilihan Editor

Bagaimana memecahkan kesalahan logis dalam analisis argumen Pertanyaan GRE - dummies

Bagaimana memecahkan kesalahan logis dalam analisis argumen Pertanyaan GRE - dummies

Ketika Anda menjawab Argument Analysis Pertanyaan di GRE, argumen mungkin tampak logis dan adil di permukaan tapi sebenarnya keliru (keliru, cacat). Alasan melingkar, penalaran sebab-akibat yang keliru, dan generalisasi sweeping adalah tiga tanda argumen lemah. Dengan melihat beberapa kesalahan logis yang lebih umum, Anda dapat mengidentifikasi kelemahan dalam argumen dan ...

Pilihan ganda, Beberapa Jawaban tentang Tes Matematika GRE - Pertanyaan Praktik - dummies

Pilihan ganda, Beberapa Jawaban tentang Tes Matematika GRE - Pertanyaan Praktik - dummies

Meskipun pertanyaan matematika biasanya hanya memiliki satu jawaban yang benar, ini tidak selalu terjadi. Akibatnya, beberapa pertanyaan pilihan ganda pada tes GRE Math akan memberi Anda daftar jawaban dan meminta Anda untuk memilih lebih dari satu. Pertanyaan praktik berikut meminta Anda untuk menemukan nilai kemungkinan yang berbeda secara berurutan dan ...

Pilihan ganda, Beberapa Jawaban tentang Tes Verbal GRE - Pertanyaan Praktik - dummies

Pilihan ganda, Beberapa Jawaban tentang Tes Verbal GRE - Pertanyaan Praktik - dummies

Pada tes GRE Verbal, beberapa pertanyaan pilihan ganda akan memiliki lebih dari satu jawaban yang benar. Untuk pertanyaan ini, Anda akan diminta untuk melihat-lihat pilihan jawaban dan memilih semua yang menurut Anda benar. Dalam pertanyaan praktik berikut, Anda diminta untuk membaca bagian yang disertakan, dan kemudian ...