Pencarian Tujuan VBA

Pencarian Tujuan di Excel VBA

Goal Seek adalah alat yang tersedia di excel VBA yang membantu kita menemukan angka yang dibutuhkan untuk dicapai untuk mencapai target yang ditetapkan.

Misalnya, Anda adalah seorang pelajar dan Anda telah menargetkan skor rata-rata 90% dari enam mata pelajaran yang tersedia. Sampai sekarang Anda telah menyelesaikan 5 ujian dan Anda hanya memiliki satu mata pelajaran, nilai yang Anda harapkan dari lima mata pelajaran yang diselesaikan adalah 89, 88, 91, 87, 89, dan 90. Sekarang Anda ingin tahu berapa banyak yang Anda butuhkan untuk mencetak nilai dalam ujian akhir untuk mencapai target persentase rata-rata keseluruhan 90%.

Ini dapat dilakukan dengan menggunakan GOAL SEEK di lembar kerja excel serta dalam pengkodean VBA. Mari kita lihat cara kerjanya dengan VBA.

Sintaks Pencarian Sasaran VBA

Di VBA Goal Seek kita perlu menentukan nilai yang kita ubah dan sampai pada hasil akhir yang ditargetkan, jadi berikan referensi sel dengan menggunakan objek VBA RANGE, nanti kita bisa mengakses opsi GOAL SEEK.

Di bawah ini adalah sintaks dari pencarian tujuan di VBA.

  • Range (): Dalam hal ini, kita perlu menyediakan referensi sel di mana kita perlu mencapai nilai yang ditargetkan.
  • Sasaran: Dalam argumen ini, kita perlu memasukkan tujuan apa yang ingin kita capai.
  • Mengubah Sel: Dalam argumen ini, kita perlu menyediakan dengan mengubah nilai sel mana yang kita butuhkan untuk mencapai tujuan.

Contoh Pencarian Sasaran VBA Excel

Berikut adalah contoh pencarian tujuan di Excel VBA.

Anda dapat mengunduh Templat Excel Pencarian Sasaran VBA ini di sini - Template Excel Pencarian Sasaran VBA

Pencarian Sasaran VBA - Contoh # 1

Mari kita ambil contoh nilai rata-rata ujian saja. Di bawah ini adalah nilai yang diharapkan dari 5 mata pelajaran dari ujian yang diselesaikan.

Pertama, kita perlu sampai pada berapa skor rata-rata dari 5 mata pelajaran yang diselesaikan. Terapkan fungsi AVERAGE di sel B8.

Dalam contoh ini Sasaran kita adalah 90, Mengubah Sel akan menjadi B7 . Jadi Pencarian Tujuan akan membantu kami menemukan skor yang ditargetkan dari subjek akhir untuk mencapai rata-rata keseluruhan 90.

Mulai subprocedure dalam modul kelas VBA.

Kode:

 Sub Tujuan_Seek_Contoh1 () Sub Akhir 

Sekarang kita membutuhkan hasilnya dalam sel B8, jadi berikan referensi range ini dengan menggunakan objek RANGE.

Kode:

 Sub Goal_Seek_Example1 () Range ("B8") End Sub 

Sekarang beri titik dan masukkan opsi "Pencarian Tujuan".

Argumen pertama adalah "Sasaran" untuk ini kita perlu memasukkan tujuan akhir kita untuk sampai di RANGE B8. Dalam contoh ini, kami mencoba mencapai target 90.

Kode:

 Sub Goal_Seek_Example1 () Range ("B8"). GoalSeek Goal: = 90 End Sub 

Argumen berikutnya adalah "Mengubah Sel" untuk ini kita perlu menyediakan di sel mana kita membutuhkan nilai baru untuk mencapai Tujuan.

Kode:

 Sub Goal_Seek_Example1 () Range ("B8"). GoalSeek Goal: = 90, ChangingCell: = Range ("B7") End Sub 

Dalam contoh ini, sel yang berubah adalah sel Sub 6 yaitu sel B7.

Oke, mari kita jalankan kodenya untuk melihat apa yang perlu dilakukan di subjek akhir untuk mencapai persentase rata-rata keseluruhan 90.

Jadi, pada subjek akhir 95 harus dinilai untuk mendapatkan rata-rata keseluruhan 90.

Pencarian Sasaran VBA - Contoh # 2

Kami telah belajar bagaimana menerapkan GOAL SEEK untuk menemukan angka yang diperlukan untuk mencapai tujuan. Sekarang kita akan melihat beberapa contoh lanjutan untuk menemukan nilai ujian akhir untuk lebih dari satu siswa.

Di bawah ini adalah nilai yang diharapkan dari 5 mata pelajaran setelah ujian.

Karena kami menemukan tujuan untuk lebih dari satu siswa, kami perlu menggunakan loop, di bawah ini adalah kode untuk Anda.

Kode:

 Sub Goal_Seek_Example2 () Dim k Sebagai Long Dim Result Sel Sebagai Rentang Redup ChangingCell As Range Redupkan Target Score Sebagai Integer TargetScore = 90 Untuk k = 2 Sampai 5 Set ResultCell = Sel (8, k) Set ChangingCell = Sel (7, k) ResultCell.GoalSeek TargetScore, ChangingCell Next k End Sub 

Kode ini akan mengulang semua nilai siswa dan sampai pada nilai ujian akhir yang diperlukan untuk mencapai rata-rata keseluruhan 90.

Jadi kami mendapatkan hasil akhirnya sekarang sebagai,

Siswa A hanya perlu skor 83 untuk mengamankan persentase keseluruhan 90 dan Siswa D perlu skor 93.

Tapi lihat Student B & C mereka harus mendapat skor 104 masing-masing di ujian akhir yang tidak mungkin sama sekali.

Seperti ini dengan menggunakan analisis GOAL SEEK kita dapat menemukan angka yang dibutuhkan untuk mencapai angka yang ditargetkan di tengah proyek atau proses.

Hal-hal untuk diingat

  • Goal Seek tersedia dengan alat lembar kerja dan juga alat VBA.
  • Sel hasil harus selalu berisi rumus.
  • Kita perlu memasukkan nilai tujuan dan mengubah referensi sel ke alat pencari tujuan.