کتاب Python for Excel 2nd Edition (پایتون برای اکسل، چاپ دوم) یک راهنمای عملی برای کسانی است که میخواهند قدرت زبان برنامهنویسی پایتون را جایگزین روشهای سنتی و محدودکنندهٔ کار با صفحات گسترده در اکسل کنند. این کتاب به مخاطبان نشان میدهد که چگونه با کتابخانههایی مانند Pandas (pandas)، نومپای (NumPy) و اوپنپایاکسل (openpyxl) میتوانند کارهایی مانند پاکسازی دادههای حجیم، خودکارسازی گزارشهای تکراری، انجام تحلیلهای پیشرفته و حتی جایگزینی توابع آرایهای پیچیده با اسکریپتهای ساده پایتون را انجام دهند.
در ادامه مقدمهای از کتاب Python for Excel را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Python for Excel:
«بله، من در این زمینه به تیم اکسل کمک کردم. بسیار خوشحالم که سرانجام منتشر شد!» این پیامی بود که گیدو ون روسوم — خالق پایتون و در آن زمان، یکی از کارمندان مایکروسافت — در تاریخ ۲۲ اوت ۲۰۲۳ در ایکس (توییتر سابق) منتشر کرد. پست او شامل لینکی به بیانیهٔ رسمی معرفی پایتون در اکسل بود. خب، چگونه به این نقطه رسیدیم؟
در روزهای اولیهٔ اکسل، «ویبیای برای برنامههای کاربردی» (VBA) تنها گزینه برای برنامهنویسی و گسترش قابلیتهای مایکروسافت اکسل توسط کاربر نهایی بود. VBA یک راهحل همهکاره است، زیرا به شما امکان میدهد:
- ماکروهایی بنویسید که با یک کلیک اجرا شوند، مثلاً برای اضافه کردن یک برگهٔ جدید حاوی گزارش.
- توابع سفارشی (که توابع تعریفشده توسط کاربر نیز نامیده میشوند) بنویسید که بتوانید از سلولهای برگه فراخوانی کنید.
- افزونههای (add-in) خود را بسازید تا قابلیتهای اتوماسیون و توابع سفارشی را در سراسر کتابهای کار فراهم کنید.
با افزایش اهمیت اینترنت و پلتفرمهای موبایل، مایکروسافت مجبور شد اکسل را در این محیطهای جدید نیز قابل اجرا کند. امروزه اکسل روی ویندوز، مکاواس، اندروید، آیاواس و مهمتر از همه، روی وب اجرا میشود. با این حال، تنها ویندوز و مکاواس از VBA پشتیبانی میکنند. مایکروسافت به جای گسترش پشتیبانی از VBA به سایر پلتفرمها، ابزارهای جدیدی خلق کرد:
- پاور کوئری (Power Query) میتواند دادهها را وارد و تغییر شکل دهد و از زبان M استفاده میکند.
- پاور پیوت (Power Pivot) یک افزونه برای مدلسازی داده است که از زبان DAX به عنوان زبان فرمول خود استفاده میکند.
- آفیس اسکریپتها (Office Scripts) از تایپاسکریپت استفاده میکنند و نزدیکترین راهحل به VBA هستند. با این حال، از توابع سفارشی پشتیبانی نمیکنند و نیاز به اشتراک مایکروسافت ۳۶۵ دارند.
- توابع لامبدا (Lambda functions) از زبان فرمول خود اکسل برای ایجاد توابع سفارشی استفاده میکنند.
پس آنچه قبلاً یک راهحل همهکاره بود، اکنون به اکوسیستمی چندتکه تبدیل شده که در آن هر ابزار از یک زبان برنامهنویسی متفاوت استفاده میکند. پایتون در اکسل گزینهٔ دیگری را به این لیست اضافه میکند: به تحلیلگران دسترسی به موتور قدرتمندتری برای تحلیل و مصورسازی میدهد، اما از اتوماسیون اکسل یا توابع سفارشی پشتیبانی نمیکند.
با این حال، پایتون یک زبان برنامهنویسی همهمنظوره است و استفاده از آن فقط برای تحلیل و مصورسازی، پتانسیل بسیار زیادی را نادیده میگیرد. به همین دلیل است که کتاب Python for Excel به پایتون در اکسل ختم نمیشود. در عوض، من به شما نشان خواهم داد که چگونه با بهرهگیری از تمام اکوسیستم پایتون، از آن به عنوان یک جایگزین مدرن برای VBA استفاده کنید.
ساختار کتاب Python for Excel
این کتاب در شش بخش سازماندهی شده است. دو بخش اول اصول پایتون و Pandas را به شما آموزش میدهند، بنابراین تا زمانی که در بخش سوم به سراغ استفادهٔ همزمان از پایتون و اکسل برویم، باید کمی صبور باشید. این کار عمدی است: اگر به دنبال مسیر سریع هستید، منابع زیادی وجود دارند که مستقیماً به سراغ پایتون در اکسل یا Pandas میروند.
با این حال، به محض اینکه نیاز به تطبیق یا اشکالزدایی کدهای این آموزشها پیدا کنید، به راحتی گیر میکنید. با ایجاد یک پایهٔ محکم در بخشهای اول و دوم، مفاهیم و ابزارهایی را درک خواهید کرد که در فصلهای بعدی به آنها متکی خواهید بود. این رویکرد در ابتدا کمی زمان بیشتری میبرد، اما در درازمدت باعث صرفهجویی در وقت و کاهش ناامیدی شما خواهد شد.
بخش اول: «مقدمهای بر پایتون»
- فصل ۱ به بررسی دلایلی میپردازد که چرا پایتون چنین همراه خوبی برای اکسل است.
- فصل ۲ ابزارهایی را معرفی میکند که در کتاب Python for Excel از آنها استفاده خواهیم کرد: مدیر بسته uv، ترمینال، ویژوال استودیو کد و نوتبوکهای جیوپایتر.
- فصل ۳ به اندازهای پایتون به شما آموزش میدهد که بتوانید بقیهٔ کتاب Python for Excel را دنبال کنید.
بخش دوم: «مقدمهای بر Pandas»
- فصل ۴ معرفی بسیار کوتاهی از نومپای (NumPy) ارائه میدهد که ستون فقرات بسیاری از بستههای علمی از جمله Pandas است.
- Pandas، موضوع فصل ۵، یکی از محبوبترین کتابخانههای پایتون برای تحلیل داده است. ساختار دادهٔ اصلی آن، دیتافریم (DataFrame)، شبیه به یک صفحهٔ گسترده است و میتواند به عنوان یک جایگزین برنامهنویسی برای یک کتابکار اکسل عمل کند.
بخش سوم: «پایتون در اکسل»
- فصل ۶ مبانی پایتون در اکسل، راهحل رسمی مایکروسافت را پوشش میدهد. پایتون در اکسل حول مفهوم یک نوتبوک جیوپایتر دو بعدی متمرکز شده است که با دسترسی به اکوسیستم گستردهٔ Pandas، تحلیل و مصورسازی بهتری را فراهم میکند.
- فصل ۷ به شما آموزش میدهد که چگونه از Pandas با سریهای زمانی استفاده کنید. برای این فصل، میتوانید نمونه کدها را یا با پایتون در اکسل یا با یک نوتبوک کلاسیک جیوپایتر دنبال کنید.
بخش چهارم: «xlwings»
- در فصل ۸، بستهٔ xlwings را برای خودکارسازی برنامهٔ اکسل از طریق پایتون معرفی میکنم. برای مثال، یاد خواهید گرفت که چگونه کتابهای کار اکسل را به صورت برنامهنویسی باز کرده و ویرایش کنید.
- فصل ۹ دربارهٔ ساخت ابزارهای تعاملی اکسل است که به شما امکان میدهد با کلیک روی یک دکمه، کد پایتون را اجرا کنید.
- فصل ۱۰ همهٔ آنچه را تاکنون یاد گرفتهاید، گرد هم میآورد تا یک برنامهٔ تجاری معمولی که با پایگاه داده پشتیبانی میشود، بسازید.
- در فصل ۱۱، توابع سفارشی خواهید نوشت که میتوانید از سلولهای اکسل، درست مانند توابع توکار مانند SUM، آنها را فراخوانی کنید.
بخش پنجم: «xlwings Lite»
- فصل ۱۲ xlwings Lite را معرفی میکند که بدون نیاز به نصب محلی پایتون، به شما دسترسی به بستهٔ xlwings میدهد. در عوض، xlwings Lite را از فروشگاه افزونههای اکسل نصب میکنید.
- فصل ۱۳ به نوشتن توابع سفارشی با xlwings Lite میپردازد. در این بخش، شما از قبل اصول پایتون، Pandas و xlwings را میدانید. این به ما امکان میدهد چند پروژهٔ جالب را بررسی کنیم: ۳.۵ میلیون سفر تاکسی را تحلیل میکنیم، جایگزینی برای تابع COPILOT مایکروسافت میسازیم، و یک مدل یادگیری ماشین از پیش آموزشدیده را برای تحلیل احساسات اجرا میکنیم.
بخش ششم: «خواندن و نوشتن فایلهای اکسل بدون نیاز به اکسل»
- این بخش با بقیهٔ کتاب Python for Excel متفاوت است، زیرا به نصب اکسل نیاز ندارد. یاد خواهید گرفت که چگونه کتابهای کار اکسل را مستقیماً روی دیسک بخوانید و بنویسید.
- فصل ۱۴ شما را با قابلیتهای خواندن و نوشتن Pandas آشنا میکند. در زیربنا، Pandas به بستههای دیگری به اصطلاح موتورها وابسته است که کار اصلی را انجام میدهند. نحوهٔ استفادهٔ مستقیم از این موتورها موضوع فصل ۱۵ است، جایی که به بستههایی مانند OpenPyXL و XlsxWriter و دیگران خواهیم پرداخت.
تازگیهای نسخهٔ دوم کتاب Python for Excel
پنج سال از نسخهٔ اول میگذرد. در این مدت، مایکروسافت پایتون در اکسل را عرضه کرد و xlwings Lite نیز به فروشگاه افزونههای اکسل راه یافت. علاوه بر این، هوش مصنوعی (AI) با انتشار ChatGPT، Microsoft Copilot و بسیاری از ابزارهای هوش مصنوعی دیگر به جریان اصلی تبدیل شده است. بر این اساس، این نسخه شامل سه فصل جدید و یک پیوست جدید است:
- فصل ۶ پایتون در اکسل را معرفی میکند.
- فصل ۱۲ xlwings Lite و قابلیتهای اتوماسیون آن را معرفی میکند.
- فصل ۱۳ کتاب Python for Excel نحوهٔ کارکرد توابع سفارشی را با xlwings Lite نشان میدهد.
- پیوست ب، Copilot در اکسل را معرفی میکند.
علاوه بر این، ترتیب برخی فصلها را کمی تغییر دادم:
- فصل ۷ کتاب Python for Excel، «تحلیل سری زمانی با Pandas» که قبلاً در بخش Pandas بود، به بخش پایتون در اکسل منتقل شده است تا بتوانید مستقیماً یک نوتبوک کلاسیک جیوپایتر را با پیادهسازی پایتون در اکسل مقایسه کنید.
- بخش ششم، «خواندن و نوشتن فایلهای اکسل بدون نیاز به اکسل» به انتهای کتاب Python for Excel منتقل شده است. این مزیت را دارد که بخشهای مرتبط با محوریت کتاب (تعامل با پایتون از برنامهٔ اکسل) در کنار هم نگه داشته میشوند، در حالی که مفهوم اساساً متفاوت دستکاری مستقیم فایلها در آخر میآید.
این نسخه همچنین چندین پروژهٔ جدید اضافه میکند که از فناوریهای مدرن از جمله DuckDB، فایلهای Parquet، مدلهای یادگیری ماشین از پیش آموزشدیده از Hugging Face و OpenAI API استفاده میکنند. علاوه بر این، نسخهٔ پایتون از ۳.۸ به ۳.۱۴ بهروزرسانی شده و Pandas از نسخهٔ ۱.۱.۳ به ۳.۰.۰ ارتقا یافته است. و در نهایت، در حالی که نسخهٔ اول از توزیع پایتون آناکوندا استفاده میکرد، این نسخه به جای آن از مدیر بسته uv برای نصب پایتون و بستههای آن استفاده میکند.
کتاب Python for Excel برای چه کسانی است؟
اگر کاربر حرفهای اکسل هستید که میخواهید با یک زبان برنامهنویسی مدرن فراتر از محدودیتهای اکسل بروید، کتاب Python for Excel برای شماست. معمولاً این به آن معناست که ماهانه ساعاتی را صرف دانلود، پاکسازی و کپی/پیست کردن حجم زیادی از داده در صفحات گستردهٔ حیاتی میکنید. اگرچه راههای مختلفی برای غلبه بر محدودیتهای اکسل وجود دارد، این کتاب بر نحوهٔ استفاده از پایتون برای این کار تمرکز خواهد کرد.
شما باید درک اولیهای از برنامهنویسی داشته باشید: این کمک میکند که قبلاً یک تابع یا یک حلقه (حلقه for) نوشته باشید (بدون توجه به زبان برنامهنویسی) و ایدهای دربارهٔ اینکه یک عدد صحیح (integer) یا یک رشته (string) چیست، داشته باشید. با این حال، حتی اگر فقط به نوشتن فرمولهای پیچیدهٔ سلولی عادت دارید یا تجربهٔ تنظیم ماکروهای ضبطشدهٔ VBA یا آفیس اسکریپتها را دارید، باز هم احتمالاً میتوانید کتاب Python for Excel را دنبال کنید. انتظار نمیرود تجربهٔ خاصی در پایتون داشته باشید، زیرا من تمام ابزارهایی را که استفاده خواهیم کرد، از جمله مقدمهای بر خود پایتون، معرفی میکنم.
اگر یک توسعهدهندهٔ با تجربهٔ VBA هستید، مقایسههای منظمی بین پایتون و VBA خواهید یافت که به شما کمک میکند از مشکلات رایج جلوگیری کنید.
کتاب Python for Excel همچنین میتواند برای شما مفید باشد اگر یک توسعهدهندهٔ پایتون هستید و نیاز دارید راههای مختلفی که پایتون میتواند با برنامهٔ اکسل و فایلهای اکسل کار کند را یاد بگیرید تا بتوانید با توجه به نیازهای کاربران تجاری خود، بستهٔ مناسب را انتخاب کنید.
چرا کتاب Python for Excel را نوشتم
از طریق کارم روی xlwings، بستهٔ اتوماسیون اکسل که در بخشهای چهارم و پنجم کتاب Python for Excel با آن آشنا خواهیم شد، با بسیاری از کاربرانی که از پایتون برای اکسل استفاده میکنند در تماس نزدیک هستم — چه از طریق ردیاب مشکلات در گیتهاب، چه سؤالی در استکاورفلو، و چه در رویدادهای حضوری مانند دیدارها یا کنفرانسها.
به طور منظم، از من خواسته میشود منابعی را برای شروع کار با پایتون معرفی کنم. در حالی که قطعاً کمبودی در معرفینامههای پایتون وجود ندارد، آنها اغلب یا خیلی کلی هستند (هیچ چیز در مورد تحلیل داده) یا خیلی خاص (معرفیهای کاملاً علمی). با این حال، کاربران اکسل معمولاً جایی در میانه هستند: آنها قطعاً با داده کار میکنند، اما یک مقدمهٔ کاملاً علمی ممکن است بیش از حد فنی باشد. آنها همچنین اغلب نیازمندیها و سوالات خاصی دارند که در هیچ یک از منابع موجود پاسخ داده نشده است. برخی از این سوالات عبارتند از:
- برای کدام کار به کدام بستهٔ پایتون-اکسل نیاز دارم؟
- چگونه میتوانم اتصال پایگاه دادهٔ پاور کوئری خود را به پایتون منتقل کنم؟
- معادل یک PivotTable اکسل در پایتون چیست؟
من کتاب Python for Excel را نوشتم تا شما را از سطح صفر دانش پایتون به خودکارسازی وظایف محور-اکسل و بهرهگیری از اکوسیستم علمی پایتون در اکسل، بدون هیچ پیچ و خم اضافی، برسانم.
سرفصلهای کتاب Python for Excel:
- Preface
- I. Introduction to Python
- 1. Why Python for Excel?
- 2. Development Environment
- 3. Getting Started with Python
- II. Introduction to pandas
- 4. NumPy Foundations
- 5. Data Analysis with pandas
- III. Python in Excel
- 6. Getting Started with Python in Excel
- 7. Time Series Analysis with pandas
- IV. xlwings
- 8. Excel Automation
- 9. Python-Powered Excel Tools
- 10. The Python Package Tracker
- 11. Custom Functions
- V. xlwings Lite
- 12. Scripts with xlwings Lite
- 13. Custom Functions with xlwings Lite
- VI. Reading and Writing Excel Files Without Excel
- 14. Excel File Manipulation with pandas
- 15. Excel File Manipulation with Reader and Writer Packages
- A. The uv Package Manager
- B. Copilot in Excel
- C. Advanced Python Concepts
- Index
- About the Author
جهت دانلود کتاب Python for Excel میتوانید پس از پرداخت، دریافت کنید.




دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.