SumIfs Formula Issue - excel

I have a monthly spreadsheet that has a link taking you to another spreadsheet with totals, could be one total by vendor, could be several according to the month. Constantly changes. I want to be able to bring those totals to the Summary spreadsheet and sum each month by vendor but it is a manual process since lines per Vendor change each month.
=SUMIFS(INDEX(D4:E9,MATCH(G4,C4:C9,0),MATCH(G5,D3:E3,0)))
THIS IS TELLING ME I HAVE ENTERED TOO FEW ARGUMENTS
=SUMIFS(INDEX(D4:E9,MATCH(G4,C4:C9,0),MATCH(G5,D3:E3,0)))
DOES NOT WORK...TOO FEW ARGUMENTS??

Related

How to use Excel to automatically add interest to a total daily

I can't find my answer anywhere, but believe it's a simple solution. I need Excel to automatically calculate the daily interest on an amount (which will go up and down with deposits and withdrawals), and then add it to the total, to display the overall total including interest (compounding). This will change daily when someone looks at the value in Excel due to the daily interest being added.
For example. I have $5000. At 5% APR, the daily interest rate would be .0137%. The day after the $5000 is there, the new total should show $5000.68 if I opened and looked at the spreadsheet. If didn't check the spreadsheet, then on day 2, the total should show $5001.37. If I added $5000 more to the total on day 2 (after interest was added) I would then have $10001.37 and the interest rate for the next day should automatically add on to the new total, compounding daily.
Sample spreadsheet with today as 12/10/22, needing to have total balance update daily
Essentially, I want a spreadsheet that can display the overall balance in an account which compounds daily, allowing withdrawals and deposits at anytime [H2]. How do I accomplish this!?
If you have interest starting date then could use below formula-
=(B2*0.0137%)*(TODAY()-A1)
Here A1 cell is interest starting date.
To see total with interest can use-
=B2+(B2*0.0137%)*(TODAY()-A1)
Make a named value called DailyInterest with a value of 1.000137.
Then make a table like this...
Date
Change
Amount
5/5/2022
$5,000.00
0
Then highlight it and click Insert Table from the ribbon.
Tables will give you a few benefits, some cosmetic, but the one I want to show you is that you can define a formula for a column, and it's ONE formula. It doesn't get copied down to each row, it just seems that way, but the reality is that the formula stored once, internally, and applied to every row.
So, then, change that amount of 0 with
=IFERROR(OFFSET([#Amount],-1,0)*POWER(DailyInterest,[#DATE]-OFFSET([#Date],-1,0),0)+N([#Change])
Within the table, [#Date] refers to the value in the Date column for that row.
I used N() so that nonvalues in the Change column are treated as zeroes.
Now, each time you fill in the Date and Change column, the Amount column will be automatically populated.

How can I have a formula follow a specific pattern in excel?

I am attempting to consolidate the daily ledger for a business to have a weekly sales category, however I am unable to continue the formula for summing the daily sales for a week. Is there a way I can have excel follow a pattern such as:
A
Date:
Daily Sales
Week of:
Weekly Sales
2
1/3
10
1/3-1/9
=sum(A2:A8)
3
1/4
15
1/10-1/16
=sum(A9:A15)
Rather than enter hundreds of formulas by hand I would like to have excel follow the rule of taking the next 6 cells in order to find the weekly total. Thank you.
Yes, Use INDEX()
=SUM(INDEX(A:A,(ROW($ZZ1)-1)*7+2):INDEX(A:A,(ROW($ZZ1)-1)*7+8))
Put that in the first cell and copy down.
INDEX, Unlike OFFSET and INDIRECT (which both can be used here), is not Volatile.

Excel - Take Average of Monthly Data

I have a historical data set for commodity pricing. Throughout the data set, the data starts inputting prices on specific days, rather than the average of the entire month. In order to keep the flow of having only the average pricing for the months.
In the best case scenario, I would use an Averageif function, however, the data for each month doesn't display a consistent amount of days.
How can I automate this the process: If the month is the same as the previous row and different than the next row, calculate the average of the ^ rows until you hit the next month.
Here's a simple display of what I mean:
]1
You can use a pivot table to get the output you want. It will also be neatly organized instead of having your averages mixed in with a mostly blank column. Photo below shows the set-up/output of a pivot table generated with random data.
For a solution without pivot tables, you can use the following formula :
=AVERAGEIFS($B$1:$B$30;$A$1:$A$30;">="&(A1-DAY(A1)+1);$A$1:$A$30;"<="&EOMONTH(A1;0))
The above example is from cell C1, and can be copied down the entire list. The dates are in $A$1:$A$30 and the values in $B$1:$B$30. The first conditions test on the first day of the month (calculated as A1-DAY(A1)+1),and the second condition as last day of the month (calculated as EOMONTH(A1;0)
This will obviously put the average value of the month on each row, but will also work if your data is not sorted on date. If this is the case, and you only want to display one number per month in the column (as in your own example), you can add an additional IF statement wrapped around the formula:
=IF(EOMONTH(A2;0)=EOMONTH(A1;0);"";AVERAGEIFS($B$1:$B$30;$A$1:$A$30;">="&(A1-DAY(A1)+1);$A$1:$A$30;"<="&EOMONTH(A1;0)))
So it will display empty in all cells, except where the month changes.

Date Dependant Calculation

I've got a (Excel) sheet with running totals of income and expenses. The data from each day is fed into a weekly running total. I also have monthly expenses that I would like to include into the weekly total expense count/profit count but don't want to put each category of monthly expenses into each day's or week's input fields.
I would like to keep the monthly expenses in it's own input field but add the data to the corresponding week the bills were paid.
I've been at this for weeks but can only find solutions that end with circular references. Bonus challanges: I'm pretty happy with the size of each input field and don't want to add any more fields nor do I want to do macros or any VBA. I really just want a formula to take care of it.
Is there a way to have Excel stop adding to a total after a certain day?
Link to the sheet. https://drive.google.com/file/d/0B5qCnQJhT_vkNHZlaEpnTGRtUjQ/view?usp=sharing
it seems like you are entering your expense directly into your "dashboard" am I right? E.g. the rent 875 in cell H13. If this is the case, without a date, then you can't get Excel to intelligently place the expense to the correct week report in your dashboard.
try creating an input table and all your dashboard figures should come from the input table, utilizing functions like SUMIFS and SUMIF.
Example
Then in your dashboard
formula in H13 would be =SUMIFS(E:E,C:C,"Rent",D:D,"Check")
formula in G4, =SUMIFS(E:E,C:C,"Food",D:D,"Cash")
formula in D23, =SUMIFS(E:E,B:B,51,C:C,"Rent",D:D,"Cash")

Excel to specify the month to report the data

Using excel, is it possible to specify the month to report in a cell?
For example, excel would need to report the latest reported sales, if its available. If the month of February sales is not available, then it will report January sales. Likewise, if March sales is available, it would report the sales in March.
How do you write this formulae in a cell in excel? If its not possible to write such a formuale, can we write a vba to do this?
If you mean you have a list of sales entries and want the sales for the last month in the data, you could write one formula to get the latest month. If months are in A you could write: =month(max(A1:A99999))
Note if you have multiple years data, you need to pull the year too or get bounding dates. You can then sum sales using an array formula like assuming the result of the first action is in D1 and sales are in B: {=sum(if(month(A1:A999999)=D1,B1:B999999,0))}
If you have incremental updates during the month, this will return month to date data. If you need data for the last full month, you can use another array formula to get the maximum month where the date is the last day of the month.
If the cells for future data in B1:B12 are blank then you just need to extract the last number in B1:B12 don't you? If so then try
=LOOKUP(9.99E+307,B1:B12)
You can use the OFFSET function to select specific data based on the month.
Insert a formula to calculate the current month (or just type in the month number)
=MONTH(TODAY())
The formula to select the current months of sales data
=SUM(OFFSET(B1,MONTH(TODAY()),0,1,1))
Have a look at the help in Excel on the OFFSET function. It can be used to select a range of data. For example, to return data from the start of the year to the current month the formula would be:
=SUM(OFFSET(B1,1,0,MONTH(TODAY()),1))
If the current month does not contain data yet, you can test to see if a value is returned and revert to the prior month if there is no data.
=IF(SUM(OFFSET(B1,B16,0,1,1))=0,SUM(OFFSET(B1,B16-1,0,1,1),SUM(OFFSET(B1,B16,0,1,1))))
I found this answer:
=IF(B12<>0,B12,IF(B11<>0,B11,IF(B10<>0,B10,IF(B9<>0,B9,IF(B8<>0,B8,IF(B7<>0,B7,IF(B6<>0,B6,IF(B5<>0,B5,IF(B4<>0,B4,IF(B3<>0,B3,IF(B2<>0,B2,IF(B1<>0,B1,0))))))))))))
This formulae solves the problem of picking up the latest available data.

Resources