tartalom
A probléma megfogalmazása
Van egy adatbázisunk (lista, táblázat – nevezze, ahogy akarja) a fizetési adatokkal egy lapon dátum:
Feladat: gyorsan kinyomtatja a pénztárbizonylatot (fizetés, számla…) a listából kiválasztott bármely kívánt bejegyzésről. Megy!
1. lépés: Hozzon létre egy űrlapot
A könyv másik lapján (nevezzük ezt a lapot Forma) hozzon létre egy üres űrlapot. Megteheti saját maga, használhat kész űrlapokat, például a Főkönyvelő magazin vagy a Microsoft webhelyéről. Valami ilyesmit kaptam:
Az üres cellákban (Számla, Összeg, innen érkezett stb.) egy másik lapról kap majd adatokat a fizetési táblázatból – kicsit később ezzel foglalkozunk.
2. lépés: A fizetési táblázat elkészítése
Mielőtt adatokat vennénk a táblázatból az űrlapunkhoz, a táblázatot kissé korszerűsíteni kell. Nevezetesen, szúrjon be egy üres oszlopot a táblázat bal oldalán. Egy címkét (legyen az angol „x” betű) adjuk meg azzal a sorral szemben, amelyből adatokat szeretnénk hozzáadni az űrlaphoz:
3. lépés A táblázat és az űrlap összekapcsolása
Kommunikációhoz a függvényt használjuk VPR(VLOOKUP) – itt olvashatsz róla bővebben. Esetünkben ahhoz, hogy az adatlapról az „x” jelű befizetés számát az űrlap F9-es cellájába beillesszük, az F9-es cellába a következő képletet kell beírni:
=VLOOKUP("x",Adat!A2:G16)
=VLOOKUP("x";Adat!B2:G16;2;0)
Azok. „érthető”-re fordítva a függvénynek az A2: G16 tartományban kell találnia az Adatlapon egy „x” karakterrel kezdődő sort, és meg kell adnia ennek a sornak a második oszlopának tartalmát, azaz a fizetési számot.
Az űrlap összes többi cellája ugyanígy van kitöltve – csak az oszlop száma változik a képletben.
Az összeg szavakban való megjelenítéséhez a függvényt használtam Saját a PLEX kiegészítőből.
Az eredmény a következő legyen:
4. lépés. Hogy ne legyen két „x”…
Ha a felhasználó „x”-et ír be több sorba, a VLOOKUP függvény csak az első talált értéket veszi fel. Az ilyen kétértelműség elkerülése érdekében kattintson a jobb gombbal a lapfülre dátum és azután Forrás szöveg (Forráskód). A megjelenő Visual Basic szerkesztő ablakban másolja ki a következő kódot:
Private Sub Worksheet_Change(ByVal Target As Range) Dim r As Long Dim str A String If Target.Count > 1 then Exit Sub if Target.Column = 1 then str = Target.Value Application.EnableEvents = False r = Cells(Rows.Count , 2).End(xlUp).Sortartomány("A2:A" & r).ClearContents Target.Value = str End If Application.EnableEvents = True End Sub
Ez a makró megakadályozza, hogy a felhasználó egynél több „x”-et írjon be az első oszlopba.
Nos, ez minden! Élvezd!
- A VLOOKUP függvény használata az értékek helyettesítésére
- A VLOOKUP funkció továbbfejlesztett változata
- Összeg szavakban (Propis függvény) a PLEX kiegészítőből