VBA mērķa meklēšana - Kā izmantot mērķa meklēšanu, lai atrastu vērtību programmā Excel VBA?

Mērķa meklēšana programmā Excel VBA

Mērķa meklēšana ir Excel VBA pieejamais rīks, kas palīdz mums atrast nepieciešamo skaitu, kas jāsasniedz, lai sasniegtu izvirzīto mērķi.

Piemēram, jūs esat students un esat mērķējis uz vidējo punktu skaitu 90% no sešiem pieejamajiem priekšmetiem. Pašlaik esat nokārtojis 5 eksāmenus, un jums paliek tikai viens priekšmets. Jūsu paredzamie rezultāti no pieciem pabeigtajiem priekšmetiem ir 89, 88, 91, 87, 89 un 90. Tagad jūs vēlaties uzzināt, cik daudz jums ir nepieciešams gūt gala pārbaudījumā, lai sasniegtu kopējo vidējo procentuālo mērķi 90%.

To var izdarīt, izmantojot GOAL SEEK Excel darblapā, kā arī VBA kodēšanā. Apskatīsim, kā tas darbojas ar VBA.

VBA mērķu meklēšanas sintakse

Programmā VBA Goal Seek mums jānorāda vērtība, kuru mainām, un jānonāk pie gala mērķa rezultāta, tāpēc sniedziet šūnas atsauci, izmantojot objektu VBA RANGE. Vēlāk mēs varam piekļūt opcijai MĒRĶA MEKLĒŠANA.

Zemāk ir vārtu meklēšanas sintakse VBA.

  • Diapazons (): Šajā gadījumā mums jānorāda šūnas atsauce, kur mums jāsasniedz mērķa vērtība.
  • Mērķis: Šajā argumentā mums jāievada mērķis, kuru mēs cenšamies sasniegt.
  • Šūnas maiņa: Šajā argumentā mums jāpiegādā, mainot šūnas vērtību, kas nepieciešama mērķa sasniegšanai.

Excel VBA mērķa meklēšanas piemēri

Tālāk ir norādīti mērķu meklēšanas piemēri programmā Excel VBA.

VBA mērķu meklēšana - 1. piemērs

Ņemsim tikai vidējā eksāmena rezultāta piemēru. Zemāk ir 5 priekšmetu paredzamais rezultāts no pabeigtā eksāmena.

Pirmkārt, mums jāsasniedz vidējais rezultāts no pabeigtajiem 5 priekšmetiem. B8 šūnā lietojiet funkciju AVERAGE.

Šajā piemērā mūsu mērķis ir 90, un šūnas maiņa būs B7 . Tātad mērķa meklēšana mums palīdzēs atrast mērķa rezultātu no pēdējā priekšmeta, lai sasniegtu kopējo vidējo rādītāju 90.

Sāciet apakšprocedūru VBA klases modulī.

Kods:

Apakšmērķa mērķis_meklēšanas_piemērs1 () Beigu apakšnodaļa

Tagad mums ir nepieciešams rezultāts B8 šūnā, tāpēc sniedziet šo diapazona atsauci, izmantojot objektu RANGE.

Kods:

Apakšmērķa_meklēšanas_piemērs1 () diapazons ("B8") Beigas apakšgrupa

Tagad ielieciet punktu un ievadiet opciju “Mērķa meklēšana”.

Pirmais arguments ir “mērķis”. Mums jāieiet mūsu galamērķī, lai nonāktu RANGE B8. Šajā piemērā mēs cenšamies sasniegt mērķi 90.

Kods:

Apakšmērķa_meklēšanas_piemērs1 () diapazons ("B8"). Mērķa mērķa mērķis: = 90 beigu apakšnodaļa

Nākamais arguments ir “Šūnas maiņa”, mums jānorāda, kurā šūnā mums ir vajadzīga jaunā vērtība, lai sasniegtu mērķi.

Kods:

Apakšmērķa mērķis_meklēšanas_piemērs1 () diapazons ("B8"). Mērķa mērķis: mērķis = 90, ChangingCell: = diapazons ("B7") beigu apakšdaļa

Šajā piemērā mūsu mainīgā šūna ir Sub 6 šūna, ti, B7 šūna.

Labi, palaidīsim kodu, lai redzētu, kas jādara pēdējā priekšmetā, lai sasniegtu kopējo vidējo procentuālo vērtību 90.

Tātad pēdējā priekšmetā ir jāieskaita 95, lai iegūtu kopējo vidējo vērtību 90.

VBA mērķu meklēšana - 2. piemērs

We have learned how to apply GOAL SEEK to find the number required to achieve the goal. Now we will see some advanced examples of finding the final examination score for more than one student.

Below are the anticipated scores of 5 subjects after the exam.

Since we are finding the goal for more than one student, we need to use loops. Below is the code for you.

Code:

Sub Goal_Seek_Example2() Dim k As Long Dim ResultCell As Range Dim ChangingCell As Range Dim TargetScore As Integer TargetScore = 90 For k = 2 To 5 Set ResultCell = Cells(8, k) Set ChangingCell = Cells(7, k) ResultCell.GoalSeek TargetScore, ChangingCell Next k End Sub

This code will loop through all the students’ scores and arrive final examination score required to achieve the overall average of 90.

So we got the end result now as,

A studentam ir jāiegūst tikai 83 punkti, lai nodrošinātu kopējo 90 procentu, bet studentam D - 93.

Bet paskatieties uz studentu B&B. Viņiem gala pārbaudījumā ir jāiegūst katrs 104, kas nemaz nav iespējams.

Šādi izmantojot GOAL SEEK analīzi, mēs varam atrast nepieciešamo skaitu, lai sasniegtu mērķa skaitli projekta vai procesa vidū.

Atceramās lietas

  • Mērķa meklēšana ir pieejama gan ar darblapas rīkiem, gan ar VBA rīku.
  • Iegūtā šūna vienmēr satur formulu.
  • Mums jāievada mērķa vērtība un jāmaina šūnu atsauce uz mērķa meklēšanas rīku.

Interesanti raksti...