Plotësimi i formularëve me të dhëna nga tabela

Formulimi i problemit

Ne kemi një bazë të dhënash (listë, tabelë - quani si të doni) me informacion mbi pagesat në një fletë Data:

Detyrë: printoni shpejt një faturë në para (pagesë, faturë…) për çdo hyrje të dëshiruar të zgjedhur nga kjo listë. Shkoni!

Hapi 1. Krijo një formular

Në një fletë tjetër të librit (le ta quajmë këtë fletë Formë) krijoni një formë boshe. Ju mund ta bëni vetë, mund të përdorni formularë të gatshëm, të marra, për shembull, nga faqet e internetit të revistës Shef Kontabilist ose faqja e internetit e Microsoft. Kam marrë diçka të tillë:

Plotësimi i formularëve me të dhëna nga tabela

Në qelizat boshe (Llogaria, Shuma, Marrë nga etj.) do të marrë të dhëna nga tabela e pagesave nga një fletë tjetër - pak më vonë do të merremi me këtë.

Hapi 2: Përgatitja e tabelës së pagesave

Para se të marrim të dhëna nga tabela për formën tonë, tabela duhet të modernizohet pak. Gjegjësisht, futni një kolonë boshe në të majtë të tabelës. Ne do të përdorim për të futur një etiketë (le të jetë shkronja angleze "x") përballë rreshtit nga i cili duam të shtojmë të dhëna në formular:

Hapi 3. Lidhja e tabelës dhe formës

Për komunikim, ne përdorim funksionin VPR(VLOOKUP) – mund të lexoni më shumë rreth tij këtu. Në rastin tonë, për të futur numrin e pagesës të shënuar "x" nga fleta e të dhënave në qelizën F9 të formularit, duhet të futni formulën e mëposhtme në qelizën F9:

=VLOOKUP(“x”,Të dhënat!A2:G16)

=VLOOKUP("x";Të dhënat!B2:G16;2;0)

Ato. i përkthyer në “i kuptueshëm”, funksioni duhet të gjejë në diapazonin A2: G16 në fletën e të dhënave një rresht që fillon me karakterin “x” dhe të na japë përmbajtjen e kolonës së dytë të kësaj rreshti, pra numrin e pagesës.

Të gjitha qelizat e tjera në formular plotësohen në të njëjtën mënyrë - vetëm numri i kolonës ndryshon në formulë.

Për të shfaqur shumën me fjalë, përdora funksionin Own nga shtesa PLEX.

Rezultati duhet të jetë si më poshtë:

Plotësimi i formularëve me të dhëna nga tabela

Hapi 4. Në mënyrë që të mos ketë dy "x" ...

Nëse përdoruesi fut "x" kundrejt disa rreshtave, funksioni VLOOKUP do të marrë vetëm vlerën e parë që gjen. Për të shmangur një paqartësi të tillë, kliko me të djathtën në skedën e fletës Data dhe pastaj Teksti burimor (Kodi i burimit). Në dritaren e redaktuesit të Visual Basic që shfaqet, kopjoni kodin e mëposhtëm:

Nën-Private Worksheet_Change(ByVal Target As Range) Dim r Sa Long Dim str Si String If Target.Count > 1 Pastaj Dil Sub If Target.Column = 1 Pastaj str = Target.Value Application.EnableEvents = False r = Cells(Rreshtat.Count , 2).End(xlUp).Rreshti i rreshtit("A2:A" & r).ClearContents Target.Value = str Fund If Application.EnableEvents = Fundi i vërtetë Nën  

Kjo makro e pengon përdoruesin të fusë më shumë se një "x" në kolonën e parë.

Epo, kjo është e gjitha! Kënaquni!

  • Përdorimi i funksionit VLOOKUP për të zëvendësuar vlerat
  • Një version i përmirësuar i funksionit VLOOKUP
  • Shuma me fjalë (funksioni Propis) nga shtesa PLEX

 

Lini një Përgjigju