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 ir palicis tikai viens priekšmets. Jūsu paredzamie rezultāti no pieciem pabeigtajiem priekšmetiem ir 89, 88, 91, 87, 89 un 90. Tagad vēlaties uzzināt, cik daudz jums ir nepieciešams gūt vārtus nobeiguma pārbaude, 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 varēsim piekļūt opcijai GOAL SEEK.

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.

Šo VBA mērķa meklēšanas Excel veidni varat lejupielādēt šeit - VBA mērķa meklēšanas Excel veidne

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

Ņemsim tikai eksāmenu vidējā 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, maināmā šūna 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”, lai to sasniegtu, lai sasniegtu B8 diapazonu. Š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 “Mainīt šūnu”, lai to mums piegādātu, 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āsaskaita 95, lai iegūtu kopējo vidējo vērtību 90.

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

Mēs esam iemācījušies izmantot GOAL SEEK, lai atrastu vajadzīgā skaitli mērķa sasniegšanai. Tagad mēs redzēsim dažus uzlabotus piemērus, kā atrast gala pārbaudījuma rezultātu vairāk nekā vienam studentam.

Zemāk ir 5 priekšmetu paredzamie rezultāti pēc eksāmena.

Tā kā mēs atrodam mērķi vairāk nekā vienam studentam, mums jāizmanto cilpas, zemāk ir norādīts jūsu kods.

Kods:

 Apakšmērķa_meklēšanas_piemērs2 () Dim k Tik ilgi Dim ResultCell As Range Dim ChangingCell As Range Dim TargetScore As Integer TargetScore = 90 K = 2 līdz 5 Iestatiet ResultCell = Cells (8, k) Iestatiet ChangingCell = Cells (7, k) ResultCell.GoalSeek TargetScore, ChangingCell Next k Beigu apakšnodaļa 

Šis kods ļaus pārskatīt visus studentu rādītājus un iegūt gala pārbaudījuma rezultātu, kas nepieciešams, lai sasniegtu kopējo vidējo 90.

Tātad mēs saņēmām gala rezultātu tagad,

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, kuriem gala pārbaudījumā ir jāsasniedz 104 punkti, kas nemaz nav iespējams.

Šādi izmantojot GOAL SEEK analīzi, mēs varam atrast vajadzīgo 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īku, gan ar VBA rīku.
  • Rezultāta šūnā vienmēr jābūt formulai.
  • Mums jāievada mērķa vērtība un jāmaina šūnu atsauce uz mērķa meklēšanas rīku.

$config[zx-auto] not found$config[zx-overlay] not found