Az Excel 2007 egy nagyszerű eszköz az adatok kezelésére és elemzésére. Néha azonban előfordulhat, hogy olyan kihívásokkal szembesülünk, mint például két matematikai művelet végrehajtása egy oszlopban található, két szóból álló adatokon. Ez elsőre bonyolultnak tűnhet, de valójában számos módszer áll rendelkezésünkre a feladat megoldására. Ebben a cikkben részletesen bemutatjuk ezeket a módszereket, lépésről lépésre, hogy te is könnyedén boldogulj.
Miért van erre szükség?
Képzeld el, hogy van egy táblázatod, ahol a termékek neve és ára egyetlen oszlopban van feltüntetve, például: „Alma 120”, „Banán 150”, „Körte 200”. És azt szeretnéd, hogy a 120, 150, 200 számokat valamilyen matematikai műveletnek alávetni, mondjuk megszorozni 1.2-vel. Ehhez először ki kell nyerni a számokat, és csak utána lehet számolni velük.
Módszerek a probléma megoldására
Több módszerrel is nekiállhatunk a feladatnak. Nézzük a leggyakoribbakat:
1. A SZÖVEG.KERES
és SZÖVEG.BAL
/SZÖVEG.JOBB
függvények használata
Ez a módszer akkor ideális, ha a számok az adatok elején vagy végén helyezkednek el, és a szóközzel vannak elválasztva.
- A
SZÖVEG.KERES
függvény használata: Ez a függvény megkeresi egy karakterlánc (jelen esetben a szóköz) pozícióját egy másik karakterláncban (a teljes adat). A szintaxisa:=SZÖVEG.KERES(" ",A1)
, ahol A1 a cella, amelyik a vizsgált adatot tartalmazza. - A
SZÖVEG.BAL
függvény használata, ha a számok az elején vannak: Ez a függvény egy szöveg bal oldaláról ad vissza adott számú karaktert. A szintaxisa:=SZÖVEG.BAL(A1;SZÖVEG.KERES(" ";A1)-1)
. ASZÖVEG.KERES(" ";A1)-1
a szóköz előtti karakterek számát adja vissza. - A
SZÖVEG.JOBB
függvény használata, ha a számok a végén vannak: Ez a függvény egy szöveg jobb oldaláról ad vissza adott számú karaktert. A szintaxisa:=SZÖVEG.JOBB(A1;HOSSZ(A1)-SZÖVEG.KERES(" ";A1))
. AHOSSZ(A1)
a teljes karakterlánc hossza, aSZÖVEG.KERES(" ";A1)
pedig a szóköz pozíciója. A kettő különbsége adja meg a szóköz utáni karakterek számát. - A számok kivonása utáni számítás: Miután a számot külön cellába kivontuk, már elvégezhetjük rajta a kívánt műveletet. Például, ha a B1 cellában van a kivont szám, akkor a
=B1*1.2
képlettel megszorozhatjuk 1.2-vel.
Fontos: A SZÖVEG.BAL
és SZÖVEG.JOBB
függvények szöveget adnak vissza, nem számot. Ezért a számításhoz szükség lehet a ÉRTÉK
függvény használatára: =ÉRTÉK(SZÖVEG.JOBB(A1;HOSSZ(A1)-SZÖVEG.KERES(" ";A1)))*1.2
.
2. A SZÖVEG.CSERE
és HELYETTE
függvények használata (bonyolultabb esetek)
Ha a számok nincsenek az adatok elején vagy végén, vagy több szóköz van az adatokban, akkor a SZÖVEG.CSERE
(angol verzióban SUBSTITUTE
) és a HELYETTE
függvények segíthetnek.
Például, ha az adat „Alma 120 db” formátumú, a következőképpen járhatunk el:
- Felesleges szóközök eltávolítása: Használjuk a
TRIM
függvényt a felesleges szóközök eltávolítására:=TRIM(A1)
- A nem numerikus karakterek eltávolítása: Itt a
HELYETTE
függvény jön a képbe. Ezzel a függvénnyel lecserélhetjük a nem numerikus karaktereket üres karakterláncra („”). Ez bonyolultabb esetekben szükségessé teheti aHELYETTE
többszöri alkalmazását, vagy akár egy felhasználói függvény (VBA) létrehozását. Például:=HELYETTE(HELYETTE(A1;"Alma";"");"db";"")
- A számok kivonása és számítás: Mint az előző módszernél, a kivont számokat
ÉRTÉK
függvénnyel számmá alakíthatjuk, és elvégezhetjük a szükséges számításokat.
3. VBA (Visual Basic for Applications) használata
A legrugalmasabb megoldás a VBA használata. Ezzel egyedi függvényeket hozhatunk létre, amelyek pontosan a mi igényeinkhez igazodnak.
- A VBA szerkesztő megnyitása: Nyomd le az Alt + F11 billentyűkombinációt.
- Modul beszúrása: A Insert menüben válaszd a Module opciót.
- A függvény kódjának megírása: Írd be a következő kódot (példa):
„`vba
Function SzamotKinyer(cella As Range) As Double
Dim szoveg As String
Dim i As Integer
Dim szam As Stringszoveg = cella.Value
For i = 1 To Len(szoveg)
If IsNumeric(Mid(szoveg, i, 1)) Then
szam = szam & Mid(szoveg, i, 1)
End If
Next iIf szam <> „” Then
SzamotKinyer = CDbl(szam)
Else
SzamotKinyer = 0
End IfEnd Function
„`Ez a függvény végigmegy a cella tartalmán, és kigyűjti az összes számot, majd egy számmá alakítja.
- A függvény használata a táblázatban: Most már használhatod a
=SzamotKinyer(A1)
függvényt a táblázatban.
Tippek és trükkök
- Hibakezelés: Mindig gondolj a hibakezelésre! Ha a cella nem tartalmaz számot, a képletek hibát adhatnak. Használhatod az
=IFERROR
függvényt a hibák elkerülésére. - Tesztelés: Alaposan teszteld a képleteket, mielőtt nagy mennyiségű adatra alkalmaznád őket.
- Automatizálás: Ha gyakran kell ilyen műveleteket végezned, fontold meg egy makró vagy egy VBA függvény létrehozását az automatizálás érdekében.
- A
HOSSZ
függvény használata: AHOSSZ
(angolulLEN
) függvény megadja egy szöveg karakterhosszát. Ez hasznos lehet aSZÖVEG.JOBB
függvény helyes használatához.
Következtetés
Két matematikai művelet végrehajtása két szóra egy oszlopban az Excel 2007-ben nem egyszerű feladat, de a megfelelő módszerekkel és a függvények ismeretével könnyedén megoldható. Kísérletezz a bemutatott módszerekkel, és válaszd ki azt, amelyik a legjobban megfelel az adott helyzetnek. Ne feledd, a gyakorlás teszi a mestert!