PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : پرسش: دستور SumIf با دامنه پویا بوسیله VBA



farhad2631
2024/04/02, 16:06
درود بر شما.
با احترام من یک سوال در خصوص دستور sumif در محیط VBA دارم که به اختصار خدمتتون عرض می کنم.
من یک فایل درست کردم که شامل جداول متفاوت و مجزا از هم هست و کاربر میتونه برای هر جدول ردیف یا ردیف هایی اضافه کنه، در قسمت جمع هر جدول از تابع sumif استفاده کردم اما در محیط vba نمیتونم از این تابع استفاده کنم.
با توجه به اینکه جداول من از هم جدا هستند باید روشی رو پیدا کنم که بتونم محدوده و Range تابع sumif رو بهش بفهمونم، اما موفق نشدم.
لطفا اگر ممکنه در این خصوص بنده رو راهنمایی بفرمائید.
با سپاس شریعتی

Amir Ghasemiyan
2024/04/02, 17:04
سلام دوست عزیز
من پیشنهاد میکنم از ابزار table استفاده کنید. مهمترین مزیت این ابزار اینه که محدوده مورد نظر رو داینامیک میکنه

farhad2631
2024/04/03, 02:14
درود مجدد.
از اینکه محبت کردید و پاسخ دادید سپاسگزارم اما مشکل من با table حل نمیشه.
من عرض کردم چندین جدول مجزا از هم دارم .
زمانی table کاربرد داره که تمامی ردیف های من بدون فاصله و پشت سر هم باشه .

Amir Ghasemiyan
2024/04/04, 09:28
درود مجدد.
از اینکه محبت کردید و پاسخ دادید سپاسگزارم اما مشکل من با table حل نمیشه.
من عرض کردم چندین جدول مجزا از هم دارم .
زمانی table کاربرد داره که تمامی ردیف های من بدون فاصله و پشت سر هم باشه .

اگه درست متوجه شده باشم شما میخواهید جمع چند sumif رو داشته باشید. اگر اینطور هست به صورت زیر میتونید عمل کنید:


SUM(SUMIF(range,critera,sumrange),SUMIF(range,crit era,sumrange),...)


و اگر نیاز دارید حتما از VBA استفاده کنید میتونید از تابع sumif در این محیط بصورت زیر استفاده کنید:


WorksheetFunction.SumIf