Таблицадагы маалыматтар менен формаларды толтуруу

Проблеманы түзүү

Бизде маалымат базасы бар (тизме, таблица – сиз каалагандай атаңыз) баракта төлөмдөр боюнча маалымат маалыматтар:

маселе: бул тизмеден тандалган каалаган жазуу үчүн накталай квитанцияны (төлөм, эсеп-дүмүрчөк…) тез басып чыгарыңыз. Go!

1-кадам. Форма түзүңүз

Китептин башка барагында (бул баракты атайлы түрү) бош форма түзүңүз. Сиз муну өзүңүз жасай аласыз, мисалы, Башкы бухгалтер журналынын веб-сайттарынан же Microsoft веб-сайтынан алынган даяр формаларды колдоно аласыз. Мен мындай нерсе алдым:

Таблицадагы маалыматтар менен формаларды толтуруу

бош уячаларда (Эсеп, сумма, алынган ж.б.) төлөм таблицасынан маалыматтарды башка барактан алат - бир аздан кийин биз бул менен алектенебиз.

2-кадам: Төлөм таблицасын даярдоо

Биздин форма үчүн таблицадан маалыматтарды алуудан мурун, таблицаны бир аз модернизациялоо керек. Тактап айтканда, таблицанын сол жагына бош мамычаны кыстарыңыз. Биз формага маалыматтарды кошкубуз келген саптын карама-каршысында энбелги (ал англисче "x" тамгасы болсун) киргизүү үчүн колдонобуз:

Кадам 3. Таблица менен форманы байланыштыруу

Байланыш үчүн биз функцияны колдонобуз VPR(КӨРҮҮ) – Бул тууралуу кененирээк бул жерден окуй аласыз. Биздин учурда, формадагы F9 уячасына Маалымат баракчасынан “х” белгиленген төлөмдүн номерин киргизүү үчүн F9 уячасына төмөнкү формуланы киргизүү керек:

=VLOOKUP(“x”,Data!A2:G16)

=VLOOKUP(“x”;Data!B2:G16;2;0)

Ошол. “Түшүнүктүү” деп которулган функция А2: G16 диапазонунда Маалымат баракчасынан “х” белгиси менен башталган сапты таап, бизге ушул саптын экинчи тилкесинин мазмунун, б.а. төлөм номерин бериши керек.

Формуладагы бардык башка уячалар ошол эле жол менен толтурулат – формулада тилке номери гана өзгөрөт.

Сумманы сөз менен көрсөтүү үчүн мен функцияны колдондум Own PLEX кошумчасынан.

Натыйжа төмөнкүдөй болушу керек:

Таблицадагы маалыматтар менен формаларды толтуруу

4-кадам. Эки "х" болбошу үчүн ...

Эгер колдонуучу бир нече сапка каршы “x” киргизсе, VLOOKUP функциясы тапкан биринчи маанини гана алат. Мындай түшүнүксүздүктү болтурбоо үчүн, барак тактасын оң баскыч менен чыкылдатыңыз маалыматтар жана андан кийин Булак текст (Булак коду). Пайда болгон Visual Basic редакторунун терезесинде төмөнкү кодду көчүрүңүз:

Private Sub Worksheet_Change(ByVal максаттуу диапазон катары) Dim r катары узун Dim str String If Target.Count > 1 Андан кийин Чыгыңыз Sub If Target.Column = 1 Андан кийин str = Target.Value Application.EnableEvents = False r = Cells(Rows.Count) , 2).End(xlUp).Row Range("A2:A" & r).ClearContents Target.Value = str End If Application.EnableEvents = True End Sub  

Бул макрос колдонуучуга биринчи тилкеге ​​бирден ашык "x" киргизүүгө жол бербейт.

Ооба, ушунча! Enjoy!

  • Маанилерди алмаштыруу үчүн VLOOKUP функциясын колдонуу
  • VLOOKUP функциясынын жакшыртылган версиясы
  • PLEX кошумчасынан сөз менен көрсөтүлгөн сумма (Propis функциясы).

 

Таштап Жооп