کمک در sumproduct

Collapse
این تاپیک قفل است.
X
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • CellEx

    • 2019/07/06
    • 28

    [حل شده] کمک در sumproduct

    همونطور که میدونید برای ضرب 2 مقدار در هر ردیف از SUMPRODUCT استفاده میکنیم
    من برای آرایه اول ستون دارم و مشکلی ندارم ولی برای آرایه دوم ستون و مقدار خاصی ندارم و برای هر ردیف باید با فرمول محاسبه بشه
    به این مثال نگاه کنید


    با این فرمول


    دو شرط اول که مربوط به تاریخ هست و مهم نیست
    آرایه اول رو دارم که همون B:B هست
    ولی برای آرایه دوم ستون خاصی ندارم و میخام هر سطر با فرمول محاسبه بشه و در آرایه قرار بگیره و کار ادامه پیدا کنه
    در واقع اونجا که 3 نقطه گذاشتم میخام محاسبه انجام بشه
    فرمول اصلی که میخام همچین چیزی هست



    یا برای ساده شدن این فرمول چون زیاد فرقی نمیکنه فقط راه بیفته فرمولش رو خودم عوض میکنم



    یعنی هر سطری که هست تاریخ پایانی (که یه مقدار مشخص هست) از تاریخ همون سطر جاری کم بشه و توی آرایه بشینه
    در پایان هم که با آرایه اول که ستون B:B هست ضرب بشن

    این هم ورودی هاش



    فایل نمونه رو هم قرار میدم


    البته مطمئن نیستم با SUMPRODUCT حل بشه ولی در کل چنین محاسباتی میخام
    ممنون
  • majid_mx4

    • 2012/06/25
    • 699

    #2
    با سلام

    لطفا بفرمایید اگر تاریخ شما بین 3/10/2020 تا 3/11/2020 بود نتیجه آن چه میشود ( بصورت دستی ) و چگونه آن را محاسبه کردید .

    با پوزش بنده چندین بار نوشته های شما را خواندم ولی به نتیجه نرسیدم . منظور شما از تاریخ جاری تاریخ سیستم است که میخواهید از هر سطر در محدوده تعریف شده بین تاریخ ها از آن کم شود و سپس مقدار کسر شدها باهم جمع شوند یا ضرب شوند یا.....


    موفق باشید میر

    کامنت

    • CellEx

      • 2019/07/06
      • 28

      #3
      نوشته اصلی توسط majid_mx4
      با سلام

      لطفا بفرمایید اگر تاریخ شما بین 3/10/2020 تا 3/11/2020 بود نتیجه آن چه میشود ( بصورت دستی ) و چگونه آن را محاسبه کردید .

      با پوزش بنده چندین بار نوشته های شما را خواندم ولی به نتیجه نرسیدم . منظور شما از تاریخ جاری تاریخ سیستم است که میخواهید از هر سطر در محدوده تعریف شده بین تاریخ ها از آن کم شود و سپس مقدار کسر شدها باهم جمع شوند یا ضرب شوند یا.....


      موفق باشید میر
      منظور تاریخ همون سطر هست مثلا برای بازه زمانی 3/10/2020 تا 3/12/2020

      تاریخ 3/10/2020 تفاضل تاریخ اون سطر با تاریخ پایانی میشه 5 که ضرب در 90 میشه 450
      تاریخ 3/11/2020 تفاضل تاریخ اون سطر با تاریخ پایانی میشه 4 که ضرب در 10 میشه 40
      تاریخ 3/12/2020 تفاضل تاریخ اون سطر با تاریخ پایانی میشه 3 که ضرب در 10 میشه 30

      تاریخ پایانی هم بصورت دستی وارد میشه که در این مساله مثلا 3/15/2020 هست

      میخام بدونم چطور میشه آرایه دوم رو با محاسبه بدست اورد چون ستون خاصی ندارم براش که بگم SUMPRODUCT این 2 تا ستون...


      فایل اکسل رو آپدیت کردم و نتایجی که باید نشون بده رو وارد کردم

      کامنت

      • majid_mx4

        • 2012/06/25
        • 699

        #4
        با سلام

        لطفا فایل ضمیمه را بررسی نمایید. امیدوارم که پاسخ مورد نظر شما باشد.
        توضیح : حتما و حتما فرمت خانه فرمول را به Number یا همان عدد تغییر دهید در غیر اینصورت تاریخ نمایش داده میشود .
        کد:
        =LOOKUP(L6,A2:A22,B2:B22)*(K6-L6)
        موفق باشید میر
        فایل های پیوست شده

        کامنت

        • CellEx

          • 2019/07/06
          • 28

          #5
          نوشته اصلی توسط majid_mx4
          با سلام

          لطفا فایل ضمیمه را بررسی نمایید. امیدوارم که پاسخ مورد نظر شما باشد.
          توضیح : حتما و حتما فرمت خانه فرمول را به number یا همان عدد تغییر دهید در غیر اینصورت تاریخ نمایش داده میشود .
          کد:
          =lookup(l6,a2:a22,b2:b22)*(k6-l6)
          موفق باشید میر
          ممنون ولی فکر کنم درست توضیح ندادم من نمیخام اینها بصورت جداگانه باشن
          فقط یک فرمول هست و نتیجه باید در یک سلول نمایش داده بشه
          مثل فرمول sumproduct
          یعنی این محاسبات که نتیجه هر کدوم مثلا میشه 450 و 40 و 30 در نهایت جمع بشن و 520 در سلول نمایش داده بشه
          امیدوارم متوجه شده باشید

          در واقع به این صورت میخام توی این سلول یک فرمول بزارم که عدد 520 رو نشون بده


          البته تا End Date که 12 باشه میشه 520 تو عکس 15
          Last edited by CellEx; 2020/03/24, 01:58.

          کامنت

          • majid_mx4

            • 2012/06/25
            • 699

            #6
            با سلام

            لطفا فرمول زیر را بررسی کنید( امیدوارم درست باشه)

            کد:
            =sumproduct((a2:a22>=l6)*(a2:a22<=k6)*(k6-a2:a22)*b2:b22)
            موفق باشید میر

            کامنت

            • CellEx

              • 2019/07/06
              • 28

              #7
              نوشته اصلی توسط majid_mx4
              با سلام

              لطفا فرمول زیر را بررسی کنید( امیدوارم درست باشه)

              کد:
              =sumproduct((a2:a22>=l6)*(a2:a22<=k6)*(k6-a2:a22)*b2:b22)
              موفق باشید میر
              ممنون فرمول شما به درستی کار میکنه
              کد:
              =sumproduct((a2:a22>=l6)*(a2:a22<=k6)*b2:b22*((b2+1-a2:a22)/(b2-a2+1)))
              یه فرمول هم بصورت آرایه ای خودم نوشتم که اونم کار میکنه
              کد:
              {=sum(if(a2:a22>=l6, if(a2:a22<=k6, b2:b22*((b2+1-a2:a22)/(b2-a2+1)))))}
              نمیدونم کدوم بهینه تر هست ولی

              الان یک موردی که میمونه توی هر دو فرمول رنج خانه ها رو انتخاب کردیم مثلا 2:22 در صورتی که محدوده مشخص نیست
              الان رنج رو زیاد میکنم مثلا از a2:a1000 و هر سطری شرایط رو داشت انجام میشه
              ولی راهی هست که مثلا از a:a استفاده کنی و خودش عملیات رو انجام بده
              یا برای آرایه این امکان وجود نداره؟

              ممنون

              کامنت

              • majid_mx4

                • 2012/06/25
                • 699

                #8
                با سلام
                بله فایل ضمیمه را بررسی کنید.
                توضیح: برای اینکار کافیست کلید های Ctrl+F3 را فشار دهید با نحوه تعریف نام برای یک محدوده و تشخیص اخرین خانه با استفاده از offset را ببینید.
                کد:
                =SUMPRODUCT((AA>=L6)*(AA<=K6)*(K6-AA)*BB)
                فرمول جدید در خانه زرد رنگ می باشد.
                پاشیدار باشید. میر
                فایل های پیوست شده

                کامنت

                چند لحظه..