Célkeresés az Excel VBA-ban
A Goal Seek az Excel VBA-ban elérhető eszköz, amely segít megtalálni az elérni kívánt számot a kitűzött cél eléréséhez.
Például diák vagy, és hat elérhető tantárgyból átlagosan 90% -os pontszámot vettél célba. Mostanáig 5 vizsgát tett le, és csak egy tárgy marad. Öt befejezett tantárgy várható pontszáma 89, 88, 91, 87, 89 és 90. Most azt szeretné tudni, hogy mennyit kell szereznie a záróvizsgán, hogy elérje a 90% -os átlagos átlagos százalékos célt.
Ezt megtehetjük a GOAL SEEK használatával az excel munkalapon, valamint a VBA kódolásban. Lássuk, hogyan működik a VBA-val.
VBA célkeresési szintaxisa
A VBA Goal Seek alkalmazásban meg kell adnunk a módosított értéket, és el kell érnünk a végső célzott eredményt, ezért a VBA RANGE objektum segítségével adja meg a cella referenciát. Később elérhetjük a GOAL SEEK opciót.
Az alábbiakban látható a célkeresés szintaxisa a VBA-ban.
- Tartomány (): Ebben meg kell adnunk a cella referenciát, ahol el kell érnünk a megcélzott értéket.
- Cél: Ebben az érvben meg kell adnunk, mi az a cél, amelyet megpróbálunk elérni.
- Cellaváltás: Ebben az érvben annyit kell szolgáltatnunk, hogy megváltoztatjuk a cél eléréséhez szükséges cellasejteket.
Példák az Excel VBA célkeresésére
Az alábbiakban bemutatjuk a célkeresés példáit az Excel VBA-ban.
VBA célkeresés - 1. példa
Vegyünk csak egy átlagos vizsga pontszámot. Az alábbiakban az elvégzett vizsga 5 tantárgy várható pontszáma látható.
Először azt kell elérnünk, hogy mekkora az átlagos pontszám az elkészült 5 tantárgyból. Alkalmazza az ÁTLAG funkciót a B8 cellában.
Ebben a példában a célunk 90, a Változó cella pedig B7 lesz . Tehát a Célkeresés segít megtalálni a célpontszámot a végső alanyból, hogy elérjük a 90-es átlagot.
Indítsa el az alfolyamatot a VBA osztály modulban.
Kód:
Sub Goal_Seek_Példa1 () End Sub
Most szükségünk van az eredményre a B8 cellában, ezért adja meg ezt a tartomány referenciát a RANGE objektum használatával.
Kód:
Alcél_Szek_Példa1 () Tartomány ("B8") Vége Al
Most tegyen egy pontot, és írja be a „Célkeresés” opciót.
Az első érv erre a „cél”. Meg kell adnunk a végcélt, hogy a B8-as tartományba érjünk. Ebben a példában megpróbáljuk elérni a 90-es célt.
Kód:
Sub Goal_Seek_Example1 () Range ("B8"). GoalSeek Goal: = 90 End Sub Sub
A következő érv a „Változó cella” ehhez, meg kell adnunk, hogy melyik cellában van szükségünk az új értékre a Cél eléréséhez .
Kód:
Sub Goal_Seek_Pelda1 () Tartomány ("B8"). GoalSeek Goal: = 90, ChangingCell: = Range ("B7") Vége Sub
Ebben a példában a változó cellánk Sub 6 sejt, azaz B7 sejt.
Ok, futtassuk a kódot, hogy megnézzük, mit kell tennünk a végső tárgyban, hogy elérjük a 90-es átlagos százalékos arányt.
Tehát a végső tantárgyban 95-öt kell pontozni, hogy a 90-es átlagot elérjük.
VBA célkeresés - 2. példa
Megtanultuk a CÉLKEREK alkalmazását a cél eléréséhez szükséges szám megtalálásához. Most néhány haladó példát fogunk látni arra vonatkozóan, hogy egynél több hallgató hogyan találja meg a záróvizsga pontszámot.
Az alábbiakban 5 tantárgy várható eredményei láthatók a vizsga után.
Mivel egynél több hallgató számára találjuk meg a célt, hurokokat kell használnunk. Az alábbiakban az Ön kódja található.
Kód:
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 - 5 Set ResultCell = Cells (8, k) Set ChangingCell = Cells (7, k) ResultCell.GoalSeek TargetScore, ChangingCell Következő k End Sub
Ez a kód végigvonul a hallgatók összes pontszámán, és eléri a 90-es átlag eléréséhez szükséges záróvizsga-pontszámot.
Tehát most megkaptuk a végeredményt,
Az A hallgatónak csak 83-at kell megszereznie a teljes 90 százalék biztosításához, D-nek pedig 93-at kell szereznie.
De nézze meg a B & C hallgatókat. A záróvizsgán egyenként 104 pontot kell szerezniük, ami egyáltalán nem lehetséges.
Így a GOAL SEEK elemzés segítségével megtalálhatjuk a szükséges számot a cél vagy szám eléréséhez a projekt vagy a folyamat közepén.
Dolgok, amikre emlékezni kell
- A Célkeresés mind a munkalap, mind a VBA eszközzel elérhető.
- A kapott cellának mindig tartalmaznia kell egy képletet.
- Meg kell adnunk a célértéket, és a cellahivatkozást módosítanunk kell a célkereső eszközre.