Използване на Python в Excel: Пълно ръководство стъпка по стъпка

  • Python в Excel ви позволява да пишете и изпълнявате Python код директно в клетки, с облачни изчисления на Microsoft и достъп до библиотеки като pandas или Matplotlib.
  • Интеграцията се комбинира с Power Query, различни режими на преизчисляване и типове изходни данни (стойности на Excel или обекти на Python) за разширен анализ и сложни модели.
  • Той съществува едновременно с класически библиотеки като openpyxl, pandas или xlwings и с инструменти за автоматизация, задвижвани от изкуствен интелект, предлагайки няколко начина за автоматизиране на Excel.

Python в Excel

Комбинацията от Пайтън и Ексел Това се превърна в една от най-интересните теми за тези, които работят ежедневно с електронни таблици и трябва да извлекат максимума от данните си. Години наред единственият начин да се обединят тези два свята беше чрез външни библиотеки, API и малко търпение. Сега Microsoft направи своя ход и интегрира Python директно в Excel, променяйки играта напълно.

В това ръководство ще видите Как да използвате Python в ExcelЩе разгледаме точно какво предлага официалната интеграция на Microsoft, как да я активирате, какво можете да правите с нея и какви са текущите ѝ ограничения. Ще разгледаме и основните класически алтернативи, базирани на библиотеки, като например... openpyxlpandas или xlwings. И дори инструменти, задвижвани от изкуствен интелект, които ви позволяват да автоматизирате Excel, без да пишете нито един ред код.

Какво точно е Python в Excel?

Когато говорим за това Python в Excel Говорим за официалната функционалност, която Microsoft е включила в Excel, която ви позволява да пишете Python код директно в клетки, сякаш въвеждате формула. След това този код се изпраща до... облак на MicrosoftТам се изпълнява със стандартна версия на Python, а резултатите се връщат във вашата работна книга като стойности, таблици, графики или Python обекти.

За тази нова среда Microsoft разчита на АнакондаТой предоставя набор от Python библиотеки, широко използвани в науката за данни и статистическия анализ. Целта е да се извършва всичко - от сложно почистване на данни до разширено статистическо моделиране, без да се напуска Excel.

Най-поразителното е това Не е необходимо да инсталирате Python локално Нито пък е нужно да управлявате виртуални среди на вашия компютър. Двигателят работи в облака, със стандартна и сигурна конфигурация, изцяло управлявана от Microsoft. Това значително опростява нещата за бизнес потребителите, които не искат да се занимават с инсталации и зависимости.

Този подход ви дава възможност да комбинират класическата екосистема на Excel (Таблици, формули, обобщени таблици, диаграми) с пълната мощ на екосистемата на Python (DataFrames, разширени визуализации, статистически модели, автоматизация и др.). Всичко това в една и съща книга.

Python Excel

Наличност и платформи, където можете да го използвате

Интегрирането на Python в Excel Разгръща се постепенно. Към днешна дата не е достъпно на всички платформи или за всички потребители. Microsoft ясно заяви, че целта е да го интегрира в абонаменти. Microsoft 365но темпът на внедряване е постепенен.

В момента функцията е достъпна в Excel за WindowsВ Excel в уеб и Excel за Macпри условие че абонаментът и каналът за актуализации са съвместими. Има обаче платформи, където, въпреки че можете да отваряте работни книги, съдържащи клетки на Python, Те не могат да бъдат преизчислени.  И ще видите грешки, ако се опитате да го направите.

Python в Excel не е наличен в Excel за iPad, Excel за iPhone или Excel за AndroidНа тези устройства могат да се показват работни книги, съдържащи Python код в клетки, но ако се инициира преизчисляване, Python клетките може да върнат грешки. Това е така, защото механизмът за изпълнение не се поддържа.

Относно състоянието на продукта, Python в Excel започна като публична предварителна версияДостъпно е за потребителите на програмата Microsoft 365 Insider чрез бета канала. По време на тази фаза функционалността се променя и разширява въз основа на обратна връзка от общността, с цел да се превърне в стандартна част от предлагането на Microsoft 365 в близко бъдеще.

Как да активирате и започнете да използвате Python в Excel

Ако имате такъв Отговаря на условията за абонамент за Microsoft 365 С правилната версия на Excel, активирането на Python в Excel е сравнително лесно, макар и не винаги очевидно от първия път. В идеалния случай трябва да започнете с празна работна книга, за да се запознаете с работния процес, преди да работите върху критични файлове.

Първият път минава през лентата:

  • Отидете в раздела „Формули“ и кликнете върху бутона „Вмъкване на Python“.С този жест казвате на Excel, че искате да конвертирате избраната клетка в клетка на Python, в която буквално можете да напишете код на езика вместо традиционна формула.
  • използвайте функцията =PYПросто напишете =PY В клетка, поставете я да се появи в менюто за автоматично довършване и я изберете с клавишите със стрелки и Tab или въведете директно =PY(От тази скоба нататък клетката приема Python код, който ще бъде изпратен в облака за извършване на изчисленията.

След като клетката бъде преобразувана в клетка на Python, ще видите Икона „PY“ в самата клетка, като същата икона се показва и във формулната лента, когато клетката е избрана. Това е бърз начин да се определи кои клетки съдържат Python код спрямо тези, които имат само формули на Excel.

Python Excel

Комбиниране на Python с клетки и диапазони в Excel

Един от ключовете за тази интеграция е, че Python може да работи директно с данните, които вече имате в електронната таблица. Без да е необходимо да ги експортирате или дублирате. За да направи това, Python в Excel използва персонализирана функция, наречена xl(), който действа като мост между обектите на Excel и кода на Python.

За да се обърнете към диапазон от клетка на Python, можете да влезете в режим на редактиране в тази клетка и изберете клетката или диапазона с мишката който искате да използвате. Excel автоматично ще вмъкне извикване във вашия код на xl() със съответния адрес на избрания от вас диапазон или таблица. С други думи, спестявате си ръчното въвеждане.

Ако предпочитате да въведете директно препратката, можете да направите и това. Например, за да работите с клетката A1 От Python би било достатъчно да се използва xl("А1"), докато за диапазон като B1:C4 бихте ли написали xl("B1:C4")В случай на именувани таблици, синтаксисът става малко по-интересен.

Представете си, че имате таблица със заглавки, наречена Моята масаАко искате Python да получи цялата таблица, включително заглавките, можете да използвате xl("МоятаТаблица", заглавки=Вярно)Спецификаторът показва, че цялата таблица трябва да бъде анализирана, а аргументът заглавки=Вярно Това гарантира, че заглавките се обработват правилно в генерирания DataFrame или структура.

Как да използвате лентата с формули с Python код

Когато започнете да пишете по-дълъг код, Лента с формули в Excel Той става ваш съюзник. Не е просто ред, където можете бързо да въведете формула, а малък редактор, който с Python в Excel става доста важен.

Ви разгъване на лентата с формули Като щракнете върху стрелката надолу отдясно. Или като използвате клавишната комбинация Ctrl+Shift+UПо този начин ще виждате няколко реда едновременно, което е много полезно, когато вашият Python код не се побира на един ред и искате да го запазите четим.

В лентата с формули можете да използвате клавиша Intro За да създавате нови редове, точно както бихте направили в редактор на код, вместо да приемате съдържанието в клетката. Това ви позволява да пишете много по-структурирани блокове код, с прекъсвания на редовете, коментари и малко по-сложна логика.

Това поведение прави преживяването по-скоро като работа в лека IDEбез да напускате Excel. Макар че няма да имате всички опции на професионален редактор, ще имате достатъчно удобна среда за аналитични скриптове, визуализации и малки модели.

Типове изходни данни за клетки в Python

Python в Excel е нещо повече от просто въвеждане на обикновени числа в клетки. Имате значителен контрол върху как се връщат резултатите от вашите скриптове. От самата лента с формули можете да изберете типа на изхода, което влияе както върху това, което виждате в клетката, така и върху начина, по който можете да използвате повторно този резултат в работната книга.

В много случаи ще ви е интересно конвертирайте резултата в стойности в Excel Например, това се случва, когато скриптът създава таблица, която искате да използвате като източник за обобщени таблици или класически диаграми на Excel. В този случай съдържанието на клетките на Python се преобразува в стандартни клетки с оригинални данни на Excel.

Друг вариант е да върнете резултата като Обект на PythonКогато изберете този режим, клетката показва икона на карта вместо обикновена стойност. Щракването върху тази икона отваря карта, където можете да прегледате обекта. Това може да бъде DataFrame, списък, фигура от Matplotlib и др.

Тази карта е особено полезна, когато шофирате. големи или сложни обектиПросто не е практично да се побере всичко в една клетка. Освен това, това ви позволява да запазите допълнителна информация, свързана с обекта – информация, която би била загубена, ако го конвертирате директно в обикновени данни на Excel.

Сред най-интересните типове данни, които можете да върнете като обект на Python, са Рамки за данниТези обекти се интегрират много добре с работния процес на анализ, тъй като ви позволяват да манипулирате, филтрирате и трансформирате данни с ниво на детайлност, което понякога е трудно да се постигне само с формули на Excel.

Импортиране на външни данни за анализ с Python в Excel

За да може Python в Excel да извърши магията си, Данните първо трябва да пристигнат в електронната таблица oa Power Query. За разлика от традиционния Python скрипт, който може да чете директно от файлове, API или други източници, тук потокът разчита на Excel, действащ като портал към данните.

Препоръчителният начин за получаване на информация от външни източници е чрез използване на функцията „Придобий и трансформирай“Това, което е известно още като Запитване за захранванеОттам можете да се свържете с CSV файлове, бази данни, онлайн услуги и много други. След това да експортирате трансформирания резултат в електронна таблица.

След като данните са на листа или в Заявка в Power QueryPython може да достъпи до тях чрез xl() и работете с получените таблици. По този начин комбинирате първоначалните възможности за почистване и трансформация на Power Query с разширената обработка на Python.

Microsoft документира подробно как Използвайте Power Query, за да импортирате данни за Python в Excel. Именно защото тази комбинация се превърна в един от стълбовете на новия начин на работа с данни в Excel, особено в бизнес среди, където източниците са разнообразни.

Ред на изчисление на клетки в Python

В традиционен Python скрипт, Инструкциите се изпълняват отгоре надолуследвайки реда, в който сте ги записали. В електронна таблица обаче изчислителната система работи по клетки и диапазони, което изисква установяване на специфични правила за клетките на Python.

В рамките на една и съща клетка на Python, кодът се оценява последователноКакто бихте очаквали във всеки .py файл: ред 1 се изпълнява преди ред 2, ред 2 преди ред 3 и така нататък. Всеки ред има имплицитна зависимост от предишния. Това влияе върху дефиницията и използването на променливи в тази клетка.

Но ако разгледаме листа като цяло, Excel оценява клетките на Python, следвайки основен ред по редовеТой итерира през всеки ред отляво надясно (от колона A до XFD) и след това преминава към следващия ред. Това означава, че клетка на Python, разположена в ред 5, няма да бъде изчислена преди клетка, разположена в ред 4, дори ако е по-вляво.

Този ред е много важен, когато дефинирате променливи в клетки и да ги използвате повторно в другиЗащото е необходимо клетката, която ги декларира, да бъде изчислена преди клетката, която ги препраща. В противен случай ще срещнете грешки или неочаквани резултати, точно както при зависимостите между формулите на Excel.

На практика това означава, че е препоръчително Структурирайте листа си логически. По този начин клетките, които установяват базови стойности или предишни изчисления, се поставят преди (най-отгоре или по-вляво) тези, които разчитат на тях. Това поддържа последователността на изчислителния поток.

Преизчисляване и режими на изчисление с Python в Excel

Всеки път, когато промените стойност, от която зависят една или повече клетки на Python, Excel преизчислява всички формули на Python последователноспазвайки реда на изчисление, който току-що видяхте. Това може да е много удобно, но може да повлияе и на производителността, ако книгата ви е голяма.

За да имате по-голям контрол, Excel предлага няколко режими на изчисление, сред които и режим на частично изчисление и режим на ръчно изчислениеТези режими спират автоматичното преизчисляване, както за таблици с данни, така и за клетки на Python, така че преизчисляването да се извършва само когато решите да го направите.

Ако сте в процес на разработване на вашия модел, деактивирането на автоматичното преизчисляване може значително подобряват производителността. Особено когато работната ви книга съдържа много Python скриптове или заявки, изискващи големи ресурси. Разбира се, ще трябва да запомните да изпълните изчислението отново, за да се уверите, че резултатите отразяват последните промени.

За да промените режима на изчисление, просто отидете на лентата, отворете раздела „Формули“ и достъп „Опции за изчисление“Там можете да изберете дали искате автоматично, частично или ръчно изчисление. Това важи както за стандартни формули, така и за клетки на Python.

Когато сте в частичен или ръчен режим, можете Преизчисляване на силата по три начина:

  • Използване на ключа F9.
  • Отивам до Формули > Изчисли сега на лентата.
  • Като щракнете върху символа за грешка, който се появява до клетка с остаряла стойност (показва се с зачеркната линия) и изберете опцията „Изчисли сега“ в падащото меню.

Python Excel

Лиценз за добавка Python в Excel и премиум възможности

В допълнение към основната функционалност, интегрирана в някои абонаменти за Microsoft 365, има и Добавка за лиценз, специфична за Python, за Excel което осигурява достъп до допълнителни функции, насочени предимно към среди, където производителността и изчислителната мощност са критични.

Този допълнителен лиценз включва, наред с други предимства, изчисляване на премията. Това се изразява в по-бързо изпълнение на формули на Python. Води и до подобрена бързина в работни книги, които комбинират много клетки на Python или големи обеми данни.

Друг важен момент е, че той разширява опции за режим на изчислениеТова осигурява още по-фин контрол върху това кога и колко често се преизчисляват формулите на Python. За напреднали потребители и екипи за данни това може да е от решаващо значение при работа със сложни модели.

Ако искате да знаете точно какво е включено във вашия абонамент и какво включва тази добавка, Microsoft поддържа специална документация по този въпрос. какво е включено в Microsoft 365 и допълнителния лиценз за Python в Excel. С подробна разбивка за бизнеса и образованието.

Изпълнение в облака, сигурност и условия за ползване

Всички изчисления на Python в Excel се изпълняват в Microsoft CloudИзползвайки стандартна версия на езика Python и набор от библиотеки, предоставени от Anaconda, тази облачна архитектура има директни последици за сигурността, производителността и поддръжката.

От гледна точка на сигурността, Microsoft прилага своите рутинни проверки за защита на данните и съответствие с регулаторните изисквания, включително аспекти, свързани с GDPR и обработката на лични данни.

Ако имате Абонамент за Microsoft 365 Family или PersonalИзползването на тази функция се регулира от Споразумение за услуги на MicrosoftВ бизнес и образователната среда обаче се намесват следните фактори: Условия за продукта, които уточняват по-подробно какво е разрешено и при какви условия.

Един ключов детайл е, че Не е необходимо да имате инсталиран Python на компютъра си. да използвате Python в Excel. И дори ако имате силно персонализирана локална инсталация, тези конфигурации не се пренасят в облачната изчислителна среда, която използва собствена стандартна, изолирана дистрибуция.

Копилот в Excel с Python: Изкуствен интелект в услуга на анализа

Интеграцията на Python в Excel не идва сама по себе си: тя се допълва от Копилот в ExcelAI асистентът на Microsoft, който вече е способен да работи и с Python код, е проектиран специално за потребители, които, без да са експерти по програмиране, искат да направят анализите си още по-задълбочени.

С Copilot можете формулиране на заявки на естествен език и оставете системата да генерира необходимия Python код, да извърши изчисленията и да покаже резултата в електронната таблица.

Този подход помага за намали бариерата за навлизане Това важи както за Python, така и за разширените функции на Excel, защото трансформира задачи, които преди това изискваха значителни технически познания, в нещо много по-разговорно и насочено.

За потребители, които вече владеят Python, Copilot може да служи и като поддръжка за варианти на тестов анализРазглеждайте шаблони или бързо изграждайте прототипи на модели, без да губите толкова много време в ръчно писане на код.

Python Excel

Защо използването на Python в Excel подобрява ежедневието ви

Появата на Python в Excel представлява значителен скок напред за всеки, който работи с данни. Възможността да манипулиране и изследване на данни Използването на pandas, създаването на графики с Matplotlib или Seaborn или изграждането на статистически модели със Statsmodels директно в листа променя значително пейзажа.

С тази интеграция можете Възползвайте се от всички тези библиотеки, без да инсталирате нищо допълнително. в екипа, интегрирайки резултатите от вашите скриптове с класически формули на Excel, обобщени таблици, сегментатори и оригинални диаграми. Всичко това в същата среда, която вашите колеги вече познават.

Способността да създаване на автоматизации директно в работната книга. От редовно почистване на данни до генериране на отчети, включително изграждане на табла за управление чрез комбиниране на интерактивни Excel диаграми с визуализации, създадени от Python.

Сигурността на данните, която винаги е била проблем в бизнес средата, остава под егидата на Microsoft 365Това улеснява споделянето на книги, скриптове и резултати чрез Teams, Outlook или SharePoint, без да се налага да напускате корпоративната екосистема.

Автоматизиране на Excel: Код срещу инструменти, задвижвани от изкуствен интелект

Наред с нативния подход на Microsoft, друг начин на работа набира скорост. Инструменти за автоматизация, задвижвани от изкуствен интелект Тези решения ви позволяват да манипулирате електронни таблици, използвайки естествен език. Те попадат някъде между класическите Python скриптове и асистенти като Copilot.

Най-традиционният подход си остава програмен пътИзползване на библиотеки като openpyxl за автоматизиране на четенето, писането, форматирането и създаването на диаграми. Този метод е идеален за разработчици, които искат да интегрират Excel в сложни канали за данни. Или в по-големи приложения, контролирайки всеки детайл от клетките и работния процес.

От друга страна, инструменти с изкуствен интелект като „Excel agent“ стават все по-популярни (като например Екселматик в някои примери), където просто качвате файл, Опишете какво искате на прост език (почистване на данни, създаване на диаграма, добавяне на формули) и получавате модифицираната работна книга.

Този подход „без код“ е много привлекателен за екипи от маркетинг, продажби или операции. Като цяло, това е за тези, които трябва бързо да автоматизират отчети и анализи, без да инвестират време в изучаване на библиотеки или дебъгване на скриптове. Изкуственият интелект се грижи за преобразуването на бизнес инструкциите в конкретни технически операции.

Интересното е, че вече можете да избирате между три основни пътя за автоматизиране на Excel:

  • Код с класически библиотеки.
  • Нативна интеграция с Python в Excel.
  • Външни агенти с изкуствен интелект.

Най-добрият вариант зависи от техническото ниво на екипа, обема на данните и колко прецизен контрол ви е необходим върху процеса.

Предвид този сценарий, комбинацията от Python и Excel се утвърждава като много мощно решение Както за технически профили, така и за бизнес потребители. От вградената облачна интеграция на Microsoft с Copilot, през класически библиотеки като openpyxl или pandas, до нови инструменти, задвижвани от изкуствен интелект, които автоматизират задачи вместо вас. На ваше разположение е... огромен набор от опции за да изведете електронните си таблици на следващото ниво, без да жертвате комфорта на средата, която използвате всеки ден.

Анализирайте данните си като учен: инструменти на Excel за професионален и ефикасен анализ
Свързана статия:
Анализирайте данните си като учен: инструменти на Excel за професионален и ефикасен анализ