VLOOKUP на некалькіх аркушах у Excel з прыкладамі

  • Падзяліцца Гэтым
Michael Brown

Падручнік паказвае, як выкарыстоўваць функцыю VLOOKUP для капіравання даных з іншага аркуша або кнігі, VLOOKUP на некалькіх аркушах і дынамічны пошук для вяртання значэнняў з розных аркушаў у розныя ячэйкі.

Калі вы шукаеце некаторую інфармацыю ў Excel, гэта рэдкі выпадак, калі ўсе дадзеныя знаходзяцца на адным аркушы. Часцей вам давядзецца шукаць на некалькіх аркушах ці нават у розных працоўных сшытках. Добрая навіна заключаецца ў тым, што Microsoft Excel прапануе больш чым адзін спосаб зрабіць гэта, а дрэнная навіна ў тым, што ўсе спосабы крыху больш складаныя, чым стандартная формула VLOOKUP. Але з крыху цярпення мы іх разбярэм :)

    Як VLOOKUP паміж двума аркушамі

    Для пачатку давайце даследуем самы просты выпадак - выкарыстанне VLOOKUP для скапіяваць дадзеныя з іншага ліста. Гэта вельмі падобна на звычайную формулу VLOOKUP, якая шукае на тым самым аркушы. Розніца ў тым, што вы ўключаеце назву аркуша ў аргумент table_array , каб паведаміць вашай формуле, на якім працоўным аркушы знаходзіцца дыяпазон пошуку.

    Агульная формула VLOOKUP з іншага аркуша выглядае наступным чынам:

    VLOOKUP(lookup_value, Sheet!range, col_index_num, [range_lookup])

    У якасці прыкладу давайце выцягнем лічбы продажаў са справаздачы Jan у Summary ліст. Для гэтага мы вызначаем наступныя аргументы:

    • Значэнні_прагляду знаходзяцца ў слупку A на аркушы Зводка , і мыVLOOKUP:

      VLOOKUP($A2, 'West'!$A$2:$C$6 , 2, FALSE)

      Нарэшце, гэтая стандартная формула VLOOKUP шукае значэнне A2 у першым слупку дыяпазону A2:C6 на аркушы West і вяртае матч з 2-га слупка. Вось і ўсё!

      Дынамічны ВПР для вяртання даных з некалькіх аркушаў у розныя ячэйкі

      Спачатку давайце вызначым, што менавіта азначае слова "дынамічны" ў дадзеным кантэксце і як будзе выглядаць гэтая формула адрозніваецца ад папярэдніх.

      Калі ў вас ёсць вялікія кавалкі дадзеных у адным фармаце, якія падзелены на некалькі электронных табліц, вы можаце атрымаць інфармацыю з розных аркушаў у розныя ячэйкі. Выява ніжэй ілюструе канцэпцыю:

      У адрозненне ад папярэдніх формул, якія атрымлівалі значэнне з пэўнага аркуша на аснове ўнікальнага ідэнтыфікатара, на гэты раз мы хочам атрымаць значэнні з некалькіх аркушаў адначасова час.

      Для гэтай задачы ёсць два розныя рашэнні. У абодвух выпадках вам трэба правесці невялікую падрыхтоўчую працу і стварыць найменныя дыяпазоны для ячэек дадзеных у кожным аркушы пошуку. Для гэтага прыкладу мы вызначылі наступныя дыяпазоны:

      • East_Sales - A2:B6 на аркушы East
      • North_Sales - A2: B6 на паўночным аркушы
      • South_Sales - A2:B6 на паўднёвым аркушы
      • West_Sales - A2:B6 на заходнім аркушы

      VLOOKUP і ўкладзеныя функцыі IF

      Калі ў вас ёсць разумная колькасць аркушаў для пошуку, вы можаце выкарыстоўваць укладзеныя функцыі IFкаб выбраць аркуш на падставе ключавых слоў у загадзя вызначаных ячэйках (у нашым выпадку ячэйкі ад B1 да D1).

      З пошукавым значэннем у A2 формула наступная:

      =VLOOKUP($A2, IF(B$1="east", East_Sales, IF(B$1="north", North_Sales, IF(B$1="south", South_Sales, IF(B$1="west", West_Sales)))), 2, FALSE)

      У перакладзе на ангельскую мову частка IF гучыць так:

      Калі B1 з'яўляецца East , глядзіце ў дыяпазон з назвай East_Sales ; калі B1 з'яўляецца Поўнач , глядзіце ў дыяпазоне з назвай Паўночныя_продажы ; калі B1 з'яўляецца Поўдзень , шукайце ў дыяпазоне з назвай Паўднёвыя_продажы ; і калі B1 роўны Захад , шукайце ў дыяпазоне пад назвай West_Sales .

      Дыяпазон, які вяртаецца IF, пераходзіць у table_array VLOOKUP, які цягне адпаведнае значэнне з 2-га слупка на адпаведным аркушы.

      Разумнае выкарыстанне змешаных спасылак для значэння пошуку ($A2 - абсалютны слупок і адносны радок) і лагічны тэст КАЛІ (B$1 - адносны слупок і абсалютны радок) дазваляе капіяваць формулу ў іншыя ячэйкі без якіх-небудзь змяненняў - Excel наладжвае спасылкі аўтаматычна на аснове адноснага становішча радка і слупка.

      Такім чынам, мы ўводзім формулу ў B2, капіюем яе правільна і да неабходнай колькасці слупкоў і радкоў і атрымаем наступны вынік:

      УСКОСНАЯ ВЫГЛЯД

      Пры працы з вялікай колькасцю аркушаў формула таксама можа складацца з некалькіх укладзеных узроўняў доўгі і складаны для чытання. Нашмат лепшы спосаб - стварыць дынамічны дыяпазон ВПР з дапамогай INDIRECT:

      =VLOOKUP($A2, INDIRECT(B$1&"_Sales"), 2, FALSE)

      Тут мы аб'ядноўваем спасылку на ячэйку, якая змяшчаеунікальная частка найменнага дыяпазону (B1) і агульная частка (_Sales). Гэта стварае тэкставы радок накшталт "East_Sales", які УСКОСНА пераўтворыцца ў назву дыяпазону, зразумелую Excel.

      У выніку вы атрымаеце кампактную формулу, якая выдатна працуе на любой колькасці аркушаў:

      Вось як VLookup паміж аркушамі і файламі ў Excel. Я дзякую вам за чытанне і спадзяюся ўбачыць вас у нашым блогу на наступным тыдні!

      Практычны сшытак для спампоўкі

      Віртуальны пошук прыкладаў некалькіх аркушаў (.xlsx файл)

      ставіцца да першай ячэйкі дадзеных, якая з'яўляецца A2.
    • Масіў_табліцы - гэта дыяпазон A2:B6 на аркушы Jan. Каб спасылацца на яго, пастаўце перад спасылкай на дыяпазон імя аркуша, за якім варта клічнік: Jan!$A$2:$B$6.

      Калі ласка, звярніце ўвагу, што мы блакуем дыяпазон абсалютнымі спасылкамі на ячэйкі, каб прадухіліць яго змяненне пры капіраванні формулы ў іншыя ячэйкі.

      Col_index_num роўны 2, таму што мы хочам скапіяваць значэнне са слупка B, які з'яўляецца 2-м слупком у таблічным масіве.

    • Range_lookup усталявана ў FALSE для пошуку дакладнага супадзення.

    Аб'яднаўшы аргументы, мы атрымаем наступную формулу:

    =VLOOKUP(A2, Jan!$A$2:$B$6, 2, FALSE)

    Перацягніце формулу ўніз па слупку, і вы атрымаеце наступны вынік:

    У падобным чынам вы можаце шукаць дадзеныя ВПР з аркушаў лютага і сакавіка :

    =VLOOKUP(A2, Feb!$A$2:$B$6, 2, FALSE)

    =VLOOKUP(A2, Mar!$A$2:$B$6, 2, FALSE)

    Парады і заўвагі:

    • Калі назва аркуша змяшчае прабелы або неалфавітныя сімвалы , яна павінна быць заключана ў двукоссе, напрыклад "Ян Сэйлз"!$A$2:$B$6 . Для атрымання дадатковай інфармацыі, калі ласка, гл. Як спасылацца на іншы аркуш у Excel.
    • Замест таго, каб уводзіць назву аркуша непасрэдна ў формулу, вы можаце пераключыцца на ліст пошуку і выбраць там дыяпазон. Excel аўтаматычна ўставіць спасылку з правільным сінтаксісам, пазбаўляючы вас ад праверкі імя і ліквідацыі непаладак.

    ВПР з іншай кнігі

    У ВПР паміж двумапрацоўныя кнігі, уключыце назву файла ў квадратныя дужкі, а затым назву аркуша і клічнік.

    Напрыклад, каб шукаць значэнне A2 у дыяпазоне A2:B6 на аркушы Jan у працоўнай кнізе Sales_reports.xlsx выкарыстоўвайце наступную формулу:

    =VLOOKUP(A2, [Sales_reports.xlsx]Jan!$A$2:$B$6, 2, FALSE)

    Для атрымання поўнай інфармацыі глядзіце VLOOKUP з іншай кнігі ў Excel.

    VLOOKUP папярок некалькі аркушаў з IFERROR

    Калі вам трэба шукаць паміж больш чым двума аркушамі, самае простае рашэнне - выкарыстоўваць VLOOKUP у спалучэнні з IFERROR. Ідэя складаецца ў тым, каб укласці некалькі функцый IFERROR для праверкі некалькіх аркушаў адзін за адным: калі першы VLOOKUP не знаходзіць супадзення на першым аркушы, шукайце на наступным аркушы і гэтак далей.

    IFERROR(VLOOKUP(…), IFERROR(VLOOKUP(…), …, " Не знойдзена "))

    Каб убачыць, як гэты падыход працуе з рэальнымі дадзенымі, давайце разгледзім наступны прыклад. Ніжэй табліца Зводка , якую мы хочам запоўніць назвамі тавараў і сумамі, шукаючы нумар заказу на аркушах Захад і Усход :

    Спачатку мы выцягнем прадметы. Для гэтага мы загадваем формуле VLOOKUP шукаць парадкавы нумар у A2 на аркушы East і вяртаць значэнне са слупка B (2-і слупок у table_array A2:C6). Калі дакладнае супадзенне не знойдзена, шукайце на аркушы Захад . Калі абодва ВПР церпяць збой, вярніце "Не знойдзена".

    =IFERROR(VLOOKUP(A2, East!$A$2:$C$6, 2, FALSE), IFERROR(VLOOKUP(A2, West!$A$2:$C$6, 2, FALSE), "Not found"))

    Каб вярнуць суму,проста змяніце індэкс слупка на 3:

    =IFERROR(VLOOKUP(A2, East!$A$2:$C$6, 3, FALSE), IFERROR(VLOOKUP(A2, West!$A$2:$C$6, 3, FALSE), "Not found"))

    Савет. Пры неабходнасці вы можаце задаць розныя масівы табліц для розных функцый VLOOKUP. У гэтым прыкладзе абодва аркушы пошуку маюць аднолькавую колькасць радкоў (A2:C6), але вашы аркушы могуць адрознівацца па памеры.

    Віртуальны пошук у некалькіх працоўных кнігах

    Для ВЧ-прагляду паміж дзвюма ці больш працоўнымі кнігамі заключыце назву працоўнай кнігі ў квадратныя дужкі і пастаўце яе перад назвай аркуша. Напрыклад, вось як можна зрабіць ВПР у двух розных файлах ( Book1 і Book2 ) з дапамогай адной формулы:

    =IFERROR(VLOOKUP(A2, [Book1.xlsx]East!$A$2:$C$6, 2, FALSE), IFERROR(VLOOKUP(A2, [Book2.xlsx]West!$A$2:$C$6, 2, FALSE),"Not found"))

    Зрабіце нумар індэкса слупка дынамічным для некалькіх слупкоў Vlookup

    У сітуацыі, калі вам трэба вярнуць даныя з некалькіх слупкоў, дынамічны col_index_num можа зэканоміць ваш час. Неабходна зрабіць пару карэкціровак:

    • Для аргумента col_index_num выкарыстоўвайце функцыю COLUMNS, якая вяртае колькасць слупкоў у вызначаным масіве: COLUMNS($A$1 :B$1). (Каардыната радка не мае асаблівага значэння, гэта можа быць любы радок.)
    • У аргументе lookup_value зафіксуйце спасылку на слупок знакам $ ($A2), каб ён заставаўся выпраўлена пры капіраванні формулы ў іншыя слупкі.

    У выніку вы атрымаеце свайго роду дынамічную формулу, якая здабывае адпаведныя значэнні з розных слупкоў, у залежнасці ад таго, у які слупок формула капіюецца:

    =IFERROR(VLOOKUP($A2, East!$A$2:$C$6, COLUMNS($A$1:B$1), FALSE), IFERROR(VLOOKUP($A2, West!$A$2:$C$6, COLUMNS($A$1:B$1), FALSE), "Not found"))

    Пры ўводзе ў слупок B, COLUMNS($A$1:B$1)вылічваецца 2, паведамляючы VLOOKUP вярнуць значэнне з 2-га слупка таблічнага масіву.

    Пры капіраванні ў слупок C (г.зн. вы перацягнулі формулу з B2 у C2), B$1 змяняецца на C$1, таму што спасылка на слупок адносная. Такім чынам, COLUMNS($A$1:C$1) дае значэнне 3, прымушаючы VLOOKUP вяртаць значэнне з 3-га слупка.

    Гэта формула выдатна працуе для 2-3 лістоў пошуку. Калі ў вас больш, паўтаральныя IFERROR становяцца занадта грувасткімі. Наступны прыклад дэманструе крыху больш складаны, але нашмат больш элегантны падыход.

    ВПР на некалькіх аркушах з дапамогай INDIRECT

    Яшчэ адзін спосаб ВПР паміж некалькімі аркушамі ў Excel - выкарыстанне камбінацыі VLOOKUP і УСКОСНЫЯ функцыі. Гэты метад патрабуе невялікай падрыхтоўкі, але ў рэшце рэшт вы атрымаеце больш кампактную формулу для ВПР у любой колькасці электронных табліц.

    Агульная формула для ВПР на аркушах выглядае наступным чынам:

    VLOOKUP( значэнне_прагляду , INDIRECT("'"&INDEX( Лістовы_прагляду , MATCH(1, ---(COUNTIF(INDIRECT("'" & Аркушы_прагляду & ") '! дыяпазон_прагляду "), значэнне_прагляду )>0), 0)) & "'! масіў_табліцы "), нумар_слупка_індэкса , FALSE)

    Дзе:

    • Lookup_sheets - найменны дыяпазон, які складаецца з імёнаў лістоў пошуку.
    • Lookup_value - значэнне для пошуку.
    • Дыяпазон_прагляду - дыяпазон слупка ў аркушах пошуку, дзе шукаць пошукзначэнне.
    • Table_array - дыяпазон даных у пошукавых лістах.
    • Col_index_num - нумар слупка ў таблічным масіве, з якога вяртае значэнне.

    Каб формула працавала карэктна, майце на ўвазе наступныя засцярогі:

    • Гэта формула масіва, якую трэба завяршыць, націснуўшы Ctrl + Клавішы Shift + Enter разам.
    • Усе аркушы павінны мець аднолькавы парадак слупкоў .
    • Паколькі мы выкарыстоўваем адзін таблічны масіў для ўсіх аркушаў пошуку, укажыце самы вялікі дыяпазон , калі вашы аркушы маюць розную колькасць радкоў.

    Як выкарыстоўваць формулу для ВПР на аркушах

    Каб ВПР шукаць некалькі аркушаў адначасова, выканайце наступныя крокі:

    1. Запішыце ўсе назвы аркушаў пошуку дзе-небудзь у сваёй працоўнай кніжцы і назавіце гэты дыяпазон ( Лістоў пошуку у нашым выпадку).

  • Наладзьце агульную формулу для вашых даных. У гэтым прыкладзе мы будзем:
    • шукаць значэнне A2 ( lookup_value )
    • у дыяпазоне A2:A6 ( lookup_range ) у чатыры аркушы ( Усход , Поўнач , Поўдзень і Захад ), і
    • выцягнуць адпаведныя значэнні са слупка B, які з'яўляецца слупком 2 ( col_index_num ) у дыяпазоне даных A2:C6 ( table_array ).

    З прыведзенымі вышэй аргументамі формула прымае такую ​​форму:

    =VLOOKUP($A2, INDIRECT("'"&INDEX(Lookup_sheets, MATCH(1, --(COUNTIF(INDIRECT("'"& Lookup_sheets&"'!$A$2:$A$6"), $A2)>0), 0)) &"'!$A$2:$C$6"), 2, FALSE)

    Звярніце ўвагу, што мы блакуем абодва дыяпазоны ($A$2:$A$6 і $A$2:$C$6) з абсалютнымі спасылкамі на ячэйкі.

  • Увядзіце формулау самай верхняй ячэйцы (у гэтым прыкладзе B2) і націсніце Ctrl + Shift + Enter, каб завяршыць.
  • Двойчы пстрыкніце або перацягніце маркер запаўнення, каб скапіяваць формулу ўніз па слупку.
  • Як У выніку мы атрымалі формулу для пошуку нумара замовы на 4 аркушах і атрымання адпаведнага элемента. Калі канкрэтны нумар заказу не знойдзены, адлюстроўваецца памылка #N/A, як у радку 14:

    Каб вярнуць суму, проста заменіце 2 на 3 у col_index_num Аргумент як сумы знаходзяцца ў 3-м слупку масіва табліцы:

    =VLOOKUP($A2, INDIRECT("'"&INDEX(Lookup_sheets, MATCH(1, --(COUNTIF(INDIRECT("'" & Lookup_sheets & "'!$A$2:$A$6"), $A2)>0), 0)) & "'!$A$2:$C$6"), 3, FALSE)

    Калі вы хочаце замяніць стандартнае абазначэнне памылкі #N/A сваім уласным тэкстам, перанясіце формулу ў функцыю IFNA:

    =IFNA(VLOOKUP($A2, INDIRECT("'"&INDEX(Lookup_sheets, MATCH(1, --(COUNTIF(INDIRECT("'" & Lookup_sheets & "'!$A$2:$A$6"), $A2)>0), 0)) & "'!$A$2:$C$6"), 3, FALSE), "Not found")

    Vlookup некалькіх аркушаў паміж працоўнымі кнігамі

    Гэта агульная формула (ці яе любы варыянт) таксама можа быць выкарыстана для пошуку некалькіх аркушаў у іншай працоўнай кнізе . Для гэтага аб'яднайце імя працоўнай кнігі ўнутры INDIRECT, як паказана ў формуле ніжэй:

    =IFNA(VLOOKUP($A2, INDIRECT("'[Book1.xlsx]" & INDEX(Lookup_sheets, MATCH(1, --(COUNTIF(INDIRECT("'[Book1.xlsx]" & Lookup_sheets & "'!$A$2:$A$6"), $A2)>0), 0)) & "'!$A$2:$C$6"), 2, FALSE), "Not found")

    Віртуальны пошук паміж аркушамі і вяртанне некалькіх слупкоў

    Калі вы хочаце атрымаць даныя з некалькіх слупкі, формула шматячэйкавага масіва можа зрабіць гэта за адзін раз. Каб стварыць такую ​​формулу, увядзіце канстанту масіва для аргумента col_index_num .

    У гэтым прыкладзе мы хочам вярнуць імёны элементаў (слупок B) і сумы (слупок C), якія з'яўляюцца 2-м і 3-м слупкамі ў масіве табліцы адпаведна. Такім чынам, неабходны масіў ёсць{2,3}.

    =VLOOKUP($A2, INDIRECT("'"&INDEX(Lookup_sheets, MATCH(1, --(COUNTIF(INDIRECT("'"& Lookup_sheets &"'!$A$2:$C$6"), $A2)>0), 0)) &"'!$A$2:$C$6"), {2,3}, FALSE)

    Каб правільна ўвесці формулу ў некалькі ячэек, вам трэба зрабіць вось што:

    • У першым радку, выберыце ўсе вочкі, якія трэба запоўніць (B2:C2 у нашым прыкладзе).
    • Увядзіце формулу і націсніце Ctrl + Shift + Enter. У выбраныя ячэйкі ўводзіцца адна формула, якая верне розныя значэнні ў кожным слупку.
    • Перацягніце формулу ўніз да астатніх радкоў.

    Як працуе гэтая формула

    Каб лепш зразумець логіку, давайце разбяром гэтую базавую формулу на асобныя функцыі:

    =VLOOKUP($A2, INDIRECT("'"&INDEX(Lookup_sheets, MATCH(1, --(COUNTIF(INDIRECT("'"& Lookup_sheets&"'!$A$2:$A$6"), $A2)>0), 0)) &"'!$A$2:$C$6"), 2, FALSE)

    Працуючы знутры, вось што робіць формула:

    COUNTIF і INDIRECT

    У двух словах, INDIRECT стварае спасылкі для ўсіх лістоў пошуку, а COUNTIF падлічвае колькасць выпадкаў пошуку значэнне (A2) на кожным аркушы:

    --(COUNTIF( INDIRECT("'"&Lookup_sheets&"'!$A$2:$A$6"), $A2)>0)

    Больш падрабязна:

    Спачатку вы аб'ядноўваеце назву дыяпазону (Lookup_sheets) і спасылку на дыяпазон ($A$2: $A$6), дадаўшы апостраф і клічнік у патрэбных месцах, каб зрабіць знешнюю спасылку, і перадаць атрыманы тэкставы радок у функцыю INDIRECT для дынамічнай спасылкі на аркушы пошуку:

    INDIRECT({"'East'!$A$2:$A$6"; "'South'!$A$2:$A$6"; "'North'!$A$2:$A$6"; "'West'!$A$2:$A$6"})

    COUNTIF правярае кожную ячэйку ў дыяпазоне A2:A6 на кожным аркушы пошуку адносна значэння ў A2 на галоўным ліст і вяртае колькасць супадзенняў для кожнага аркуша. У нашым наборы дадзеных парадкавы нумар у фармаце A2 (101) знаходзіцца на аркушы West , які з'яўляецца 4-м унайменны дыяпазон, таму COUNTIF вяртае гэты масіў:

    {0;0;0;1}

    Далей вы параўноўваеце кожны элемент масіва вышэй з 0:

    --({0; 0; 0; 1}>0)

    Гэта дае масіў значэнняў TRUE (больш за 0) і FALSE (роўных 0), якія вы прыводзіце да 1 і 0 з дапамогай двайнога адзінарнага (--), і ў выніку атрымліваеце наступны масіў:

    {0; 0; 0; 1}

    Гэтая аперацыя з'яўляецца дадатковай мерай засцярогі для апрацоўкі сітуацыі, калі аркуш пошуку змяшчае некалькі ўваходжанняў значэння пошуку, і ў гэтым выпадку COUNTIF верне лік, большы за 1, у той час як нам патрэбныя толькі 1 і 0 у канчатковы масіў (неўзабаве вы зразумееце чаму).

    Пасля ўсіх гэтых пераўтварэнняў наша формула выглядае наступным чынам:

    VLOOKUP($A2, INDIRECT("'"&INDEX(Lookup_sheets, MATCH(1, {0;0;0;1} , 0)) &"'!$A$2:$C$6"), 2, FALSE)

    ІНДЭКС і СУПАДАВАННЕ

    На гэтым этапе ўваходзіць класічная камбінацыя INDEX MATCH:

    INDEX(Lookup_sheets, MATCH(1, {0;0;0;1}, 0))

    Функцыя MATCH, настроеная на дакладнае супадзенне (0 у апошнім аргументе), шукае значэнне 1 у масіве { 0;0;0;1} і вяртае сваю пазіцыю, якая роўная 4:

    INDEX(Lookup_sheets, 4)

    Функцыя INDEX выкарыстоўвае вернуты лік па MATCH у якасці аргумента нумара радка (row_num) і вяртае 4-е значэнне ў названым дыяпазоне Lookup_sheets , які з'яўляецца West .

    Такім чынам, формула дадаткова памяншае да:

    VLOOKUP($A2, INDIRECT("'"&" West "&"'!$A$2:$C$6"), 2, FALSE)

    VLOOKUP і INDIRECT

    Функцыя INDIRECT апрацоўвае тэкставы радок у ім:

    INDIRECT("'"&"West"&"'!$A$2:$C$6")

    І пераўтварае яго у спасылку, якая ідзе на аргумент table_array

    Майкл Браўн - адданы энтузіяст тэхналогій, які любіць спрашчэнне складаных працэсаў з дапамогай праграмных інструментаў. Маючы больш чым дзесяцігадовы досвед працы ў індустрыі тэхналогій, ён удасканальваў свае навыкі ў Microsoft Excel і Outlook, а таксама ў Google Sheets і Docs. Блог Майкла прысвечаны таму, каб падзяліцца сваімі ведамі і вопытам з іншымі, даючы простыя ў выкананні парады і падручнікі для павышэння прадукцыйнасці і эфектыўнасці. Незалежна ад таго, з'яўляецеся вы дасведчаным прафесіяналам або пачаткоўцам, блог Майкла прапануе каштоўную інфармацыю і практычныя парады, каб атрымаць максімальную аддачу ад гэтых неабходных праграмных інструментаў.