I want to display data from 3 seperate cells in one sheet in a single cell in a different sheet in the same workbook. I believe it would require an if or statement but not sure how to write it.
Example: if B3 has data, then both B4 and B5 will be blank and the cell in the other sheet will display the B3 data
Example: If B3 is blank, B4 has data and B5 is blank, then the cell in the other sheet would display the B4 data
Example: If B3 is blank, B4 is blank and B5 has data, the cell in the other sheet would display the B5 data
How do I go about writing this function?
I would suggest something simpler. As whatever process inputs data on those cells seems to already determine data validation you can just concatenate all the cells with spaces added and trim the result. As only one cell is populated at a time from your description then only that cell's data will show on the output cell. It would look something like this:
=TRIM(B3&" "&B4&" "&B5)
Hope this resolves your concern. Cheers,
Thank you to all who posted solutions.
Here is what I am using and it works.
=RequestForm!B30&RequestForm!B38&RequestForm!B61&RequestForm!B85
Related
The user enters any value in cell B3, this then makes the title Property 1 appear in B2. I need it to also populate the C2 field with the same formula and so on.
I have a formula in cell B2, which is basically; If cell B3 has information in it, B2 will populate with Property 1. I then need to apply that same formula to the next cell in the sequence - C2, with Property 2, so on and so forth.
=IF(NOT(ISBLANK(B3)),"Property "&COLUMN()-1,"")
The formula itself works very well, I have put it into all of the row 2 fields. The issue is that Excel prints pages with formulas. I've tried finding a way to stop printing the pages with only formulas, but there doesn't appear to be such a thing. As I don't know how many pages will be used, the formula needs to be clever enough to stop if the row 3 field is not populated.
I am creating a report document which will automatically calculate the total marks earned by a student in a classroom. The values to be multiplied are in cell B22 and E22 of Sheet1, Sheet2, Sheet3 and to display the result in Sheet4. Sheet1, Sheet2 and Sheet 3 have the same formatting and design. What is the method or Formula that can be used to multiply;
B22*E22 in Sheet1 which will display the result in sheet4,
and when i use the auto fill handle on the cell containing the result in sheet4, excel should follow that pattern to multiply the same cells across the various sheets automatically;
let's say
B22*E22 in Sheet2
B22*E22 in Sheet3
and so on...
I have tried calculating it manually;
Let's say on Sheet4 in Cell A1, i used
='Sheet1'!B22*'Sheet1'!E22
in Cell A2, ='Sheet2'!B22*'Sheet2'!E22
in Cell A3, ='Sheet3'!B22*'Sheet3'!E22
and it worked. But the problem here is that, this work is purely manual and time consuming since i have a lot of sheets (about 62 sheets) and a lot of other cell calculations to make similar to that above (in other workbooks).
When i input the formula ='Sheet1'!B22*'Sheet1'!E22 in cell A1,
i tried using the auto fill handle to drag and fill the cells A2 and A3.
But it didn't work as excel keeps changing the cell references.
This is the formula i used which works on Sheet4
in A1 ='Sheet1'!B22*'Sheet1'!E22
When i use the auto fill handle, to fill the formula and have the values in
A2, this is what it gives ='Sheet1'!B23*'Sheet1'!E23
A3, this gives ='Sheet1'!B24*'Sheet1'!E24
I want a formula or method through which when i use the field handle, excel should Maintain the Cells reference for calculation (Multiplication), that is,
B22 and E22
and rather change the sheets instead. That is,
On Sheet4, in cell A1: ='Sheet1'!B22*'Sheet1'!E22
A2: ='Sheet2'!B22*'Sheet2'!E22
A3: ='Sheet3'!B22*'Sheet3'!E22.
The formulae above is the result i expect to have.
But the actual output is
On Sheet4, in cell
A1: ='Sheet1'!B22*'Sheet1'!E22
A2: ='Sheet1'!B23*'Sheet1'!E23
A3: ='Sheet1'!B24*'Sheet1'!E24.
Any help/clue will be highly appreciated!
Thanks in advance.!
=INDIRECT("'Sheet"&ROW(A1)&"'!B22")*INDIRECT("'Sheet"&ROW(A1)&"'!E22")
Place the above formula in an empty cell then copy down.
The INDIRECT function converts text with references to an excel reference. Something to be aware of though is that INDIRECT is a volatile function. This is not the end of the world. A volatile function simply means it recalculates anytime anything in the workbook changes. A regular function will only recalculate when something that affects it changes. In other words, if you have a workbook full of volatile functions you may notice some performance issues with the workbook due to all the calculation happening anytime a cell was changed
Update
Apparently I should listen to my own write up. INDIRECT converts references. Apparently it will not work with the math operator. So use indirect for each reference and keep your math operators out of the indirect.
The above image shows a copy and paste of the above formula. IF the sheet does not exist it will toss an error as it does not have an address to find.
So lots of options shown working, B22 left blank to prove calculation works.
Used multiply instead of add as that was what you had, also changed "" to 0 to get the correct functionality.
Is it possible to create two input cells that are equal to each other without VBA code eg. A1 = A5 and A5 = A1. So when I change the value of A1 it affects A5 and change in A5 makes A1 change too.
No, it is not. It will require VBA.
A cell can have a formula or it can have a user supplied value but not both.
The only way is VBA.
You can have a third cell, say B1. Then have the user change B1 and equate A1 and A5 to B1:
=B1
Then the user only needs to change one cell and the others will update.
Strictly speaking it is possible, if the sheet is set to use iterative calculation, with using =B1 in A5 and =A5 in B1. However entering data in either cell will overwrite the formula, so would only work the one time.
The title pretty much says it. I need to transfer certain cells from one cell to another without the coordinates of the cells changing after an insert operation.
In ex., I want the value of cell B3 of Sheet1 to transfer to cell A2 of Sheet2. If I insert a column on the left of B3, the previous B3 will become C3 and you now have a new B3 in which you can add a new value. I want my A2 to still receive the value of B3, but the new B3, not the old B3 with is now C3.
If I go with +Sheet1!B3, after the insertion of the column it will become +Sheet1!C3. I want it to remain to +Sheet1!B3.
I tried with $, +Sheet1!$B$3, but it still changes.
You can use the indirect function in excel.
+INDIRECT("Sheet1!B3")
With the caveat that you never change the location of column A you could do the following:
=INDEX(Sheet1!$A:$$ZZ,ROW(B3),2)
Caveat: as set up will only work for cells between and including columns A and ZZ. the ZZ reference will increase as columns get added. If you have columns outside of ZZ initially, then you will have to adjust the final column reference to suit your needs.
INDEX gave me some errors in the function (probably on my end), but I managed to solve it using INDIRECT.
Ty for the feedback, #AlexCollins #ForwardEd
I have an excel document with multiple sheets. Each sheet contains data of separate test executions. Now I would like to create to see the overall trends for all the executions. This requires that I use data from multiple sheets in one series.
An example to make this clear is that my y-axis would be constant but my y-axis of the chart would contain the following data:
1st entry: Sheet1 Cell B4
2nd entry: Sheet2 Cell B4
3rd entry: Sheet3 Cell B4
4th entry: Sheet4 Cell B4
.....and so on.
Now, as i keep doing more executions, I would like to add data to the existing chart.
COuld someone please help me with the following two points in excel:
1. How to add data to a single series from multiple sheets, as mentioned above by example?
2. How do I keep adding data to the chart after each execution?
Thanks,
Sunny
What do you mean by each execution - adding new sheets, or graphing
different cells (ie B5 after B4 etc?)
For the graph the easiest way would be to build a simple summary range on one sheet that pulls in B4 from Sheet1 as the first value, B4 from Sheet2 as the second value etc
Two quick ways to build this list are to:
Use the Sheets ..... Put together rows or columns from several sheets.." functionality from ASAP Utilities
Build a sheet index using INDIRECT in conjunction with a formula that drops out repeatable sheet names
="Sheet"&ROW()-1 in A2 will give "Sheet1", copied to A3 will
give "Sheet2" etc.
Then in B2 enter =INDIRECT("'"&A2 &"'!" &$B$1) to pull B4 from Sheet1 etc
The second method can quickly be updated to pull a different cell by changing the B4 value in cell A1 to another cell (say B5)
INDIRECT(string) will return the value of the range identified by 'string'. The formula should actually be
=INDIRECT("'"&A2 &"'!"&$B$1)
so string is "'Sheet1'!B4", since A2 holds Sheet1 and $B$1 holds B4
This indirect then provides the value in cell B4 of Sheet1.