Generate dynamic images based on the values in a column of data - excel

I'm trying to find a way to automatically generate images in a column based on the values in another column (The application is adding rebar images to an excel file that is exported from BIM software).
I have managed to get dynamic images using the 'define name' tool to define a name with the following formula:
=INDEX(Sheet1!$B$2:$B$4;MATCH(Sheet1!$F$2;Sheet1!$A$2:$A$4;0))
I have linked an image to this formula to make it dynamic. However I am stuck on the last step, where I want to apply this principle to an entire column where each image is based on the value in column F in its corresponding row. I have tried adjusting the formula to
=INDEX(Sheet1!$B$2:$B$4;MATCH(Sheet1!$F$2:$F$500;Sheet1!$A$2:$A$4;0))
But this did not change the behavior.
I was hoping to have the column of dynamic images change based on the cell next to it (so if I paste the column of dynamic images in column G I want the image in G5 to be based on the value in F5, G6 based on F6, ...)
All the images are however based on the value in F2.
What I want to achieve
Sample file: https://wetransfer.com/downloads/94a6b73b1bd8408638f614c4bd965dee20191031090453/e01ddc

I am having the same issue. I know you need to use image links. Indirect might work, but I haven't figured it out yet.
This is the only thing that I have found but it would require a defined name for each row:
computergaga.com/blog/create-a-picture-lookup-in-excel
Let me know if you find something better

Related

Excel - How to get value from location specified in different cell

I'm trying to retrieve value located in different spreadsheet which would be easy if I could link it.
But my links are partially build with formulas:
In cell a1 i have this:
="C:\spreadsheets\lists\shopping\"&C1&"\"&A5&"\"&P5&"\["&C2&" Shopping list March.xlsx]Data'!$GJ$7"
Then I would link to use it in b2 as value from this location (pointed above)
="C:\spreadsheets\lists\shopping\A\B\C\[Second Shopping list March.xlsx]Data'!$GJ$7"
But I cannot find solution how i can make it work as a link instead of text value i'm getting now.
Any help would be appreciated.
Thank you

How to fill in another table using a partial match to data in another table

I'm trying to fill in a table using data from another table. I've researched the VLOOKUP function, and either I don't fully understand it, or it isn't the right tool.
For example, let's say I have a column of data that is of the format: (p53, chk2, stra8-cre)
From this column, I want to extract any row (the entire row) that has 'chk2' in it. What tool can I use for this?
Thanks
From what I'm understanding, you're trying to have a formula in one cell that sets the content of all cells in its row. As far as I know, you can't do that without some sort of macro.
My suggestion would be to have a similar formula in each of the rows you want to set.
EDIT:
Use SEARCH to help with this problem. Look here on how to use it for this case.
Ex:
layout in CSV format:
p53chk2,a2,a3
chk2,b2,b3
stra8-cre,c3,c4
formula:
=IF(ISNUMBER(SEARCH("chk2",$A1)),B1,"")
Copy this formula across all cells in the row, and the contentshould be applied the subsequent cells.
Hope this helps, let me know if this isn't exactly what you were looking for.

Vlookup function generating duplicate values, how can I fix this please?

Hy Every Body, I have two excel sheets name as "Blotter" and "Opportunity", I want to use "Vlookup" Function in Opportunity so that I can find out which opportunity is available in the blotter sheet. Please take a look at the Blotter sheet as under
In the Column B the Opportunities are available.
Now please look at the opportunity sheet.
In the opportunity sheet I am using this function.
=IF(D2 = "","",VLOOKUP(D2,blotter,10,0))
It working fine with first five rows but later it start duplicate the same value multiple time, because behind these cell on the blotter sheet the column B has Piad/place status instead of opportunity. So it duplicate the next opportunity. I have tried many tricks like match, index, but in vain.
I know it can be fixed. I have google it and also try to find it via youtube but unable to fix it.
I don't think it can be done without an intermediate column. The position of the next value in the lookup key depends on where the position of the last successful lookup was, so in a way the lookup chain is path dependent and I don't think you can build path dependency with any ease inside an Excel formula.
In the below example you get something akin to what I think you want by calculating how many spaces there are to the next valid lookup key in Column C, and then doing an Offset in column D. In column C I use an indirect which generates path dependency based on the sum of the cells above itself. You would need to apply similar principles to your example, should only need a single equivalent of my column C.
Formulas as follows:
Column C: =MATCH("OPP",INDIRECT("A"&SUM($C$1:C1)+2&":A50"),0)
Column D: =OFFSET($B$1,SUM($C$1:C2),0)

Change the file reference in a formula using the content of another cell

I need help with a formula (or macro) please.
On the printscreen below ColA and Row1 are copied in via a macro and cells c2 down and right are formulas.
The problem I have is when Row1 is copied in next time the project names might change (say a new one called "100 Project") and I will need to change the filename in the formulas in C5 onwards.
I don't want to use INDIRECT as I can't have 70 or so files open.
Is there a formula I can use please or does anyone have a macro that'll do the job?
Printscreen
Show us a full circle of what you want to use, what you want to do with it and what the end result should look like. (you can reference the screenshot provided) as I'm not quite clear of want you want to do and don't want to guess.
In any case:
=CELL("filename",A1) should help you with current file name however you rename the document you work on.
Other than that you can import however many filenames you have on a list without needing to open them. We will expand on that should it be needed.
PS Based on updated info:
=INDIRECT(CONCATENATE("'",$C$3,"'","!","A",ROW()))
The reference to make that formula work is C3
This is integrated instead of your
" 'g:\it\capex\2015 etc etc tec ... Plan'!$B$20:$B$119 "
C3="C:\folder\[filename.xlsx]sheet name"
(derived by formula or however you want - the result shows the address)
If you want to put in the sheet name independently or more flexibly simply add one more ,references for it to the concatenation.
Either adjust the formula to accommodate your C3 or adjust your c3 to accommodate the formula its fairly simple = you can do it more easily when you remove the INDIRECT and see what remains as text. Get the correct text running through that and you can need correct reference. You can use the general idea to create dynamic address lists that you can reference from 1 location. Further more vba can pull names from directories so you can compile an active list, leaving you with little to no manual work... Yes - most people usually frown upon crafting location addresses in formulas and usually tell you to reorganize your work files, but some times its necessary to access files ad-hoc on value based references.

Excel drop down list not working in other cells

What I'm trying to do is make a drop down menu using a name range and data validation.
Simple enough however the problem arises when I have multiple cells running off the same name range.
In my spreadsheet I have two rows using two different name ranges. The problem is occuring for both. One line is employee names and one line is project manager names.
The following link is an image of the cells in question. I do not have 10 rep and as such cannot post an image sorry.
http://imgur.com/wfTaOZj
The first cell is normal and the drop down works fine however, the adjacent cell which is a copy of the first cell doesn't drop down anything.
the code I'm using to define the range for my drop down is:
=MANAGEMENT_list!$D$2:INDEX(MANAGEMENT_list!D:D,LOOKUP(2,1/(MANAGEMENT_list!D:D<>""),ROW(MANAGEMENT_list!D:D)))
The range goes from D2 to the last nonempty cell in column D.
When I do data validation for the other cells I get "the source Currently evaluates to an error".
Hopefully I've included enough information if not feel free to ask and I will clarify.
I think you have to lock your ranges since you are copying to the right:
From
=MANAGEMENT_list!$D$2:INDEX(MANAGEMENT_list!D:D,LOOKUP(2,1/(MANAGEMENT_list!D:D<>""),ROW(MANAGEMENT_list!D:D)))
To
=MANAGEMENT_list!$D$2:INDEX(MANAGEMENT_list!$D:$D,LOOKUP(2,1/(MANAGEMENT_list!$D:$D<>""),ROW(MANAGEMENT_list!$D:$D)))

Resources