برای تهیه جریان نقدینگی پروژه ساختمانی در اکسل، باید زمان رسیدن پول و زمان پرداخت آن را کنار هم بگذاریم. تأیید صورتوضعیت به معنی موجودشدن پول در حساب نیست. ممکن است پروژه روی کاغذ سود داشته باشد، اما برای پرداخت حقوق یا خرید هفته بعد، وجه کافی در اختیار کارگاه نباشد.
در این آموزش، موجودی یک پروژه فرضی را برای شش ماه حساب میکنیم و میبینیم یک ماه تأخیر در وصول دریافتها چه اثری دارد. فایل اکسل شامل ۱۲ تراکنش، دو سناریو و نمودار موجودی است؛ سناریوها با تغییر یک خانه بهروز میشوند.
دانلود نمونه جریان نقدینگی پروژه ساختمانی
فایل .xlsx با موجودی ابتدای ماه، دریافت، پرداخت، موجودی پایان ماه و سناریوی تأخیر وصول. برگهها و نمودار با فونت IRANSans تهیه شدهاند.
هزینه، مصرف منابع پروژه را نشان میدهد؛ جریان نقدی، حرکت پول را. اگر مصالح تحویل گرفته شده و هزینه آن ثبت شده باشد، اما وجهش ماه بعد پرداخت شود، زمان هزینه و پرداخت یکسان نیست. از طرف دیگر، وصول یک طلب مربوط به ماه گذشته، دریافت نقدی این ماه است.
وام یا آورده مالک هم میتواند موجودی نقد را افزایش دهد، ولی درآمد حاصل از اجرای کار محسوب نمیشود. بنابراین برای کنترل سودآوری، گزارش هزینه و درآمد لازم است؛ برای پرداختهای پیش رو، گزارش نقدینگی را جداگانه بخوانید. مبنای کلی این تفکیک در کنترل هزینه پروژه ساختمانی توضیح داده شده است.
نمونه برای پروژه آموزشی MS-DEMO-01 است. موجودی اول دوره ۲۰ میلیون تومان و بازه گزارش، نوامبر ۲۰۲۶ تا آوریل ۲۰۲۷ است. همه مبلغها و زمانها فرضیاند و برآورد قیمت روز یا شرایط یک قرارداد واقعی نیستند.
دریافتها را خالص وجه قابل وصول و پرداختها را وجه خروجی در نظر گرفتهایم. در پروژه خودتان، پیشپرداخت، بازپرداخت آن، کسورات، سپرده و مالیات را مطابق همان قرارداد و اسناد جدا کنید. هیچ درصد ثابتی برای این موارد در فایل فرض نشده است. تأمین مالی و هزینه مالی هم در مثال وجود ندارد.
دو برگه داریم: Transactions برای ثبت تراکنشها و CashFlow برای محاسبه و نمودار. در Transactions، شناسه، تاریخ پایه، نوع جریان، شرح، مبلغ و وضعیت را وارد کنید. نوع جریان فقط «دریافت» یا «پرداخت» است؛ مبلغ را مثبت ثبت کنید تا فایل تفاضل را درست حساب کند.
| ماه میلادی | موجودی اول | دریافت | پرداخت | خالص جریان | موجودی پایان |
|---|---|---|---|---|---|
| نوامبر ۲۰۲۶ | 20 | 50 | 60 | -10 | 10 |
| دسامبر ۲۰۲۶ | 10 | 80 | 70 | 10 | 20 |
| ژانویه ۲۰۲۷ | 20 | 70 | 80 | -10 | 10 |
| فوریه ۲۰۲۷ | 10 | 100 | 70 | 30 | 40 |
| مارس ۲۰۲۷ | 40 | 60 | 80 | -20 | 20 |
| آوریل ۲۰۲۷ | 20 | 40 | 50 | -10 | 10 |
سه رابطه برای ساخت جدول کافی است: خالص جریان = دریافت − پرداخت، موجودی پایان = موجودی اول + خالص جریان و موجودی اول ماه بعد = موجودی پایان ماه قبل. در ماه اول، ۲۰ + ۵۰ − ۶۰ = ۱۰. این ۱۰، موجودی ابتدای ماه دوم میشود.
در برگه CashFlow، ستون B ماه اول است. B14 موجودی اول، B15 دریافت و B16 پرداخت است. فرمول B17 برابر =B15-B16 و فرمول B18 برابر =B14+B17 است. برای ماه دوم، C14 را به B18 وصل کردهایم؛ موجودی اول را هر ماه دستی تکرار نکنید.
ستون E برگه Transactions مبلغ و ستون G تاریخ مؤثر تراکنش است. تاریخ شروع هر ماه در ردیف ۱۲ گزارش قرار دارد. دریافت همان ماه با این فرمول جمع میشود:
=SUMIFS(Transactions!$E$6:$E$205,Transactions!$C$6:$C$205,"دریافت",Transactions!$G$6:$G$205,">="&B$12,Transactions!$G$6:$G$205,"<"&EDATE(B$12,1))برای پرداخت، شرط «دریافت» با «پرداخت» جایگزین میشود. حد بالای بازه، ابتدای ماه بعد است؛ به این ترتیب همه روزهای ماه جاری در محاسبه میآیند. تاریخها باید عدد تاریخ اکسل باشند، نه متن فارسی. در اکسلهایی با جداکننده «;»، ویرگول فرمول را تغییر دهید.
در CashFlow، خانه B5 را از ۱ به ۲ تغییر دهید. سناریوی دوم، فقط دریافتهایی را که وضعیتشان «پیشبینی» است، یک ماه عقب میبرد. پرداختها تغییر نمیکنند و تراکنشهای «واقعی» در تاریخ قطعی خود باقی میمانند. محاسبات و نمودار از همان یک جدول بهروز میشوند.
| ماه | دریافت با تأخیر | پرداخت | موجودی پایان با تأخیر |
|---|---|---|---|
| نوامبر ۲۰۲۶ | 0 | 60 | -40 |
| دسامبر ۲۰۲۶ | 50 | 70 | -60 |
| ژانویه ۲۰۲۷ | 80 | 80 | -60 |
| فوریه ۲۰۲۷ | 70 | 70 | -60 |
| مارس ۲۰۲۷ | 100 | 80 | -40 |
| آوریل ۲۰۲۷ | 60 | 50 | -30 |
در سناریوی پایه، کمترین موجودی پایان ماه ۱۰ است. با یک ماه تأخیر، موجودی از ماه اول منفی میشود و در چند ماه به منفی ۶۰ میرسد. پس در چارچوب این محاسبه ماهانه، ۶۰ میلیون تومان کسری داریم که باید برای زمان و روش پوشش آن برنامهریزی شود.
دریافت ۴۰ واحدی آوریل حذف نشده؛ به ماه مه، خارج از افق ششماهه منتقل شده است. فایل آن را در «جمع دریافت خارج افق آینده» نمایش میدهد. موجودی منفی ۳۰ پایان آوریل را بدون توجه به آن طلب و زمان وصولش تفسیر نکنید.

در نمودار موجودی پایان ماه، نقطه زیر صفر یعنی منابع نقدی فرضشده برای پرداختهای آن بازه کافی نیست. قبل از رسیدن به آن ماه، زمان وصول صورتوضعیت، موعد خریدها و پرداختهای قراردادی را با افراد مسئول مرور کنید. دریافت احتمالی را قطعی حساب نکنید و پرداخت ضروری را صرفاً برای مثبتشدن نمودار عقب نیندازید.
این نمونه ماهانه است. ممکن است موجودی آخر ماه مثبت باشد، ولی پرداخت بزرگی در ابتدای همان ماه، قبل از وصول وجه، کسری ایجاد کند. برای ماههای حساس، جدول هفتگی یا روزانه بسازید و تاریخ واقعی ورود و خروج وجه را بررسی کنید؛ عدد ۶۰ این مثال، بیشترین کسری درونماهی را تعیین نمیکند.
نمودار نقدینگی را با S Curve پیشرفت پروژه اشتباه نگیرید. پیشرفت کار، هزینه شناساییشده و پرداخت نقدی سه مبنای متفاوت دارند. ارتباطشان باید از برنامه، قرارداد و سند مالی قابل پیگیری باشد.
تراکنشهای انجامشده را با صورتحساب بانکی تطبیق دهید و وضعیتشان را «واقعی» کنید. برای دریافتهای آینده، تاریخ محتمل وصول را اصلاح کنید. ورودیهای آبی را تغییر دهید و فرمولهای تاریخ مؤثر را نگه دارید. برای شروع گزارش جدید، تاریخ و موجودی اول دوره را با هم بهروز کنید.
فایل تا ردیف ۲۰۵ تراکنش را پوشش میدهد. اگر داده بیشتری دارید، محدوده فرمولهای دریافت و پرداخت و کنترل شناسه را هم گسترش دهید. اختلاف کنترل پیوستگی ماهها باید صفر باشد. صفرشدن این کنترل فقط اتصال موجودیها را تأیید میکند؛ کاملبودن اسناد بانکی همچنان باید بررسی شود.
بله. اگر وجه کار انجامشده دیرتر از موعد پرداخت حقوق، خرید یا پیمانکار جزء برسد، فاصله زمانی میتواند کسری نقد ایجاد کند.
در گزارش نقدینگی، تاریخ ورود وجه مهم است. برای پیشبینی، تاریخ محتمل وصول و برای تراکنش واقعی، تاریخ قطعی بانکی را ثبت کنید.
از موجودی پایان ماه قبل. فقط موجودی ابتدای کل دوره ورودی است؛ بقیه موجودیها در فایل با فرمول به هم وصل شدهاند.
برای مطالعه بیشتر: مدیریت جریان نقدینگی ساخت در Procore و مدلسازی جریان نقدینگی در مدیریت ساخت.