Use a cell value as part of a formula

Hi All,

I'm trying to use a cell value as part of a vlookup function. The idea
is to keep changing the lookup query based on a the contents of a
specific cell

This is the forumla I'm currently using

VLOOKUP($A2,'C:\Matrix0203\07-Feb03\[025-MainPub-ET-1801.XLS]Sheet1'!$A$1:$M$200,2,FALSE)

I need a way to replace "025-MainPub-ET-1801.XLS" in the formula based
on another cell, where this will be generated (or manually entered).

Right now I'm doing a select all, find and replace to achieve this.

Any help will be appreciated...

Chirag
0
madgeek (5)
4/19/2004 6:35:20 AM
excel.newusers 15348 articles. 2 followers. Follow

7 Replies
705 Views

Similar Articles

[PageSpeed] 8

Hi Chirag,

You could use the 'INDIRECT' function for this, but it will only work
correctly when the source workbook is open.

A workable alternative might be to use a macro to incorporate the cell's
string into the formula, for example:

Sub UpdateRef()
    ActiveCell.Formula = "=VLOOKUP($A2,'C:\Matrix0203\07-Feb03\[" & _
    Range("A1").Value & "]Sheet1'!$A$1:$M$200,2,FALSE)"
End Sub

where the workbookname is in A1. You would probably also want to replace
'ActiveCell' with a specific cell's address.

Cheers


"M@DG33K" <madgeek@hotmail.com> wrote in message
news:1530852b.0404182235.4e5b918f@posting.google.com...
> Hi All,
>
> I'm trying to use a cell value as part of a vlookup function. The idea
> is to keep changing the lookup query based on a the contents of a
> specific cell
>
> This is the forumla I'm currently using
>
>
VLOOKUP($A2,'C:\Matrix0203\07-Feb03\[025-MainPub-ET-1801.XLS]Sheet1'!$A$1:$M
$200,2,FALSE)
>
> I need a way to replace "025-MainPub-ET-1801.XLS" in the formula based
> on another cell, where this will be generated (or manually entered).
>
> Right now I'm doing a select all, find and replace to achieve this.
>
> Any help will be appreciated...
>
> Chirag


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.627 / Virus Database: 402 - Release Date: 16/03/2004


0
4/19/2004 8:35:48 AM
Hey! thanks that worked perfectly.

What changed would I need to make to do it this in a range of cells? e.g c2:V11

Chirag


"macropod" <pNeOd.sStPeAiMn@pcug.org.au (del NO.SPAM)> wrote in message news:<c602lk$5vit0$1@ID-216222.news.uni-berlin.de>...
> Hi Chirag,
> 
> You could use the 'INDIRECT' function for this, but it will only work
> correctly when the source workbook is open.
> 
> A workable alternative might be to use a macro to incorporate the cell's
> string into the formula, for example:
> 
> Sub UpdateRef()
>     ActiveCell.Formula = "=VLOOKUP($A2,'C:\Matrix0203\07-Feb03\[" & _
>     Range("A1").Value & "]Sheet1'!$A$1:$M$200,2,FALSE)"
> End Sub
> 
> where the workbookname is in A1. You would probably also want to replace
> 'ActiveCell' with a specific cell's address.
> 
> Cheers
0
madgeek (5)
4/20/2004 4:27:08 AM
Chirag

It's not clear to me, if you want the same
formula in all cells. Is this, what you're after?

 Sub UpdateRef()
     Range("C2:V11").Formula = "=VLOOKUP($A2,'C:\Matrix0203\07-Feb03\[" & _
     Range("A1").Value & "]Sheet1'!$A$1:$M$200,2,FALSE)"
 End Sub


-- 
Best Regards
Leo Heuser

Followup to newsgroup only please.

"M@DG33K" <madgeek@hotmail.com> skrev i en meddelelse
news:1530852b.0404192027.464fdcbd@posting.google.com...
> Hey! thanks that worked perfectly.
>
> What changed would I need to make to do it this in a range of cells? e.g
c2:V11
>
> Chirag
>
>
> "macropod" <pNeOd.sStPeAiMn@pcug.org.au (del NO.SPAM)> wrote in message
news:<c602lk$5vit0$1@ID-216222.news.uni-berlin.de>...
> > Hi Chirag,
> >
> > You could use the 'INDIRECT' function for this, but it will only work
> > correctly when the source workbook is open.
> >
> > A workable alternative might be to use a macro to incorporate the cell's
> > string into the formula, for example:
> >
> > Sub UpdateRef()
> >     ActiveCell.Formula = "=VLOOKUP($A2,'C:\Matrix0203\07-Feb03\[" & _
> >     Range("A1").Value & "]Sheet1'!$A$1:$M$200,2,FALSE)"
> > End Sub
> >
> > where the workbookname is in A1. You would probably also want to replace
> > 'ActiveCell' with a specific cell's address.
> >
> > Cheers


0
4/20/2004 6:04:25 AM
Hi Leo,

I experimented and used the same solution for a range. however it
doesn't solve the problem. because I need the formula to change
according to another variable (apart from the one used before).

The "07-Feb03"in the formula needs to change basis another cell that
will be in the same column as the formula

If this is a sample worksheet

		        Aug-02	Sep-02	Oct-02	Nov-02
					
TOTAL REVENUE		1294.41	1223.3	1531.23	1059.69
Advertisement Total	1052.65	963.69	1260.24	1000.1
Circulation Total	200.56	230.12	208.33	194.93
DVC - Print Media	784.37	741.74	862.85	689.33
Paper		        700.3	649.31	762.74	587.63

Now each of the above is calculated basis links into a separate
workbook using the VBA snippet. I need the 07-Feb03 to change basis
the month on top of the column.

I tried modifying the VBA snippet to do it, but I couldn't figure out
how to keep the cell reference to keep changing. The solution that you
specified, to work needs to this change in the original formula...

Thanks in advance

Chirag

"Leo Heuser" <leo.heuser@NOSPAMadslhome.dk> wrote in message news:<O7Jfy1pJEHA.3848@TK2MSFTNGP09.phx.gbl>...
> Chirag
> 
> It's not clear to me, if you want the same
> formula in all cells. Is this, what you're after?
> 
>  Sub UpdateRef()
>      Range("C2:V11").Formula = "=VLOOKUP($A2,'C:\Matrix0203\07-Feb03\[" & _
>      Range("A1").Value & "]Sheet1'!$A$1:$M$200,2,FALSE)"
>  End Sub
> 
>
0
madgeek (5)
4/21/2004 4:22:43 AM
Hi Chirag

Still not 100% sure about the setup, but
you may try this snippet. I have assumed,
that  Aug-02 Sep-02 Oct-02 Nov-02 etc.
is in C1:V1. I'm not sure about the "07-"-part
Maybe
"=VLOOKUP($A2,'C:\Matrix0203\" & TopText & "\["
should be
"=VLOOKUP($A2,'C:\Matrix0203\07-" & TopText & "\["
?

Sub UpdateRef()
Dim Cell As Range
Dim FormulaRange As Range
Dim TopText As String

    With Sheets("Sheet1")
        Set FormulaRange = .Range("C2:V11")

        For Each Cell In FormulaRange.Cells
            TopText = _
                .Cells(FormulaRange.Offset(-1, 0).Row, Cell.Column).Value
            Cell.Formula = _
                "=VLOOKUP($A2,'C:\Matrix0203\" & TopText & "\[" & _
                Range("A1").Value & "]Sheet1'!$A$1:$M$200,2,FALSE)"
        Next Cell
    End With
End Sub

-- 
Best Regards
Leo Heuser

Followup to newsgroup only please.

"M@DG33K" <madgeek@hotmail.com> skrev i en meddelelse
news:1530852b.0404202022.f006b7c@posting.google.com...
> Hi Leo,
>
> I experimented and used the same solution for a range. however it
> doesn't solve the problem. because I need the formula to change
> according to another variable (apart from the one used before).
>
> The "07-Feb03"in the formula needs to change basis another cell that
> will be in the same column as the formula
>
> If this is a sample worksheet
>
>         Aug-02 Sep-02 Oct-02 Nov-02
>
> TOTAL REVENUE 1294.41 1223.3 1531.23 1059.69
> Advertisement Total 1052.65 963.69 1260.24 1000.1
> Circulation Total 200.56 230.12 208.33 194.93
> DVC - Print Media 784.37 741.74 862.85 689.33
> Paper         700.3 649.31 762.74 587.63
>
> Now each of the above is calculated basis links into a separate
> workbook using the VBA snippet. I need the 07-Feb03 to change basis
> the month on top of the column.
>
> I tried modifying the VBA snippet to do it, but I couldn't figure out
> how to keep the cell reference to keep changing. The solution that you
> specified, to work needs to this change in the original formula...
>
> Thanks in advance
>
> Chirag
>



0
4/21/2004 5:31:01 AM
HI,

This is perfect... 

This is how I'm using it

Sub UpdateR()
Dim Cell As Range
Dim FormulaRange As Range
Dim TopText As String


    With Sheets("DM") ' My Sheet Name is DM
        Set FormulaRange = .Range("d3:v4")

        For Each Cell In FormulaRange.Cells
            TopText = _
                .Cells(FormulaRange.Offset(-2, 0).Row, Cell.Column).Value
            Cell.Formula = _
                "=VLOOKUP($A3,'" & TopText & "\[" & _ 
' Changed the forumla to keep the entire path in TopText
                Range("c18").Value & "]Sheet1'!$A$1:$M$200,2,FALSE)"
        Next Cell
    End With
End Sub


The lookup cell in the vlookup needed to change rows as well 

from A3 to A4 and so on...

There may be amore efficient solution, but this is how I solved it...


Sub UpdateR()
Dim Cell As Range
Dim FormulaRange As Range
Dim TopText As String
Dim SideText As String 'New Variable

'Worksheets("DataMiner").Activate
 '   Worksheets("DataMiner").Range("D3").Activate

    With Sheets("DM")
        Set FormulaRange = .Range("d3:v12")

        For Each Cell In FormulaRange.Cells
            TopText = _
                .Cells(FormulaRange.Offset(-2, 0).Row, Cell.Column).Value
            SideText = Cell.Row 'Added this
            Cell.Formula = _
                "=VLOOKUP($A" & SideText & " ,'" & TopText & "\[" & _ 

'Changed the Formula by dynamically adding row number
                Range("c18").Value & "]Sheet1'!$A$1:$M$200,2,FALSE)"
        Next Cell
    End With
End Sub

Warm regards and Many many Thanks

Chirag


"Leo Heuser" <leo.heuser@NOSPAMadslhome.dk> wrote in message news:<#w5rQH2JEHA.556@tk2msftngp13.phx.gbl>...
> Hi Chirag
> 
> Still not 100% sure about the setup, but
> you may try this snippet. I have assumed,
> that  Aug-02 Sep-02 Oct-02 Nov-02 etc.
> is in C1:V1. I'm not sure about the "07-"-part
> Maybe
> "=VLOOKUP($A2,'C:\Matrix0203\" & TopText & "\["
> should be
> "=VLOOKUP($A2,'C:\Matrix0203\07-" & TopText & "\["
> ?
> 
> Sub UpdateRef()
> Dim Cell As Range
> Dim FormulaRange As Range
> Dim TopText As String
> 
>     With Sheets("Sheet1")
>         Set FormulaRange = .Range("C2:V11")
> 
>         For Each Cell In FormulaRange.Cells
>             TopText = _
>                 .Cells(FormulaRange.Offset(-1, 0).Row, Cell.Column).Value
>             Cell.Formula = _
>                 "=VLOOKUP($A2,'C:\Matrix0203\" & TopText & "\[" & _
>                 Range("A1").Value & "]Sheet1'!$A$1:$M$200,2,FALSE)"
>         Next Cell
>     End With
> End Sub
> 
> -- 
> Best Regards
> Leo Heuser
>
0
madgeek (5)
4/26/2004 6:11:01 AM
You're welcome, Chirag.
Glad you could use it, and thanks
for the feedback.

Regards
LeoH


"M@DG33K" <madgeek@hotmail.com> skrev i en meddelelse
news:1530852b.0404252211.196fcc9@posting.google.com...
> HI,
>
>
> Warm regards and Many many Thanks
>
> Chirag
>
>


0
4/26/2004 7:05:24 PM
Reply:

Similar Artilces:

Outlook using imap is receiving but not sending
Messages are being put in Sent folder and Send/Receive shows no errors but emails are not actually getting sent. This is a new install of Outlook on a new computer. Have I messed up the setup? "Theatre Girl" wrote in message news:64BB711F-FE56-440C-A850-DADCA8C3BA00@microsoft.com... > Messages are being put in Sent folder and Send/Receive shows no > errors but > emails are not actually getting sent. This is a new install of > Outlook on a > new computer. Have I messed up the setup? IMAP is not a sending protocol. It is used for receiving mails (out of your ...

Line charts using temperature and time factors
I want to create a line chart showing comparisons of heating and time. For example one item is held @ 30deg for 10secs then 100degs for 30secs while the comparison is plotted to show the difference. Help appreciated. try x-y scatter chart data-columnwise. Excelon_Ls <Excelon_Ls@discussions.microsoft.com> wrote in message news:6B9F5547-A35C-4272-9FDC-F2CE6122D783@microsoft.com... > I want to create a line chart showing comparisons of heating and time. For > example one item is held @ 30deg for 10secs then 100degs for 30secs while the > comparison is plotted to show the diff...

character limit in cell?
I merged several cells and entered text. I have it set to 'wrap text' so it will all fit in the merged cells. If the text is only 1/2 of the third row it is all displayed. However, if I enter any more text than that it displays as '#######'. Is there a limit on the number of characters I can enter? Can that be changed. There is still room in the merged cells to hold more text. Abby, You don't seem to be getting any takers on this one. ####, to my knowledge, shows up only when you have a number in a cell (not text), and it's too big to display in its entir...

VBA: move to the next cell down from anywhere in the sheet
I am deleting rows based on a value in a column (< 16) and if the valu is 16 or greater I want to move down to the next row and check tha value and so on. i am using a Do Until value = "". What is the code for moving down to the next cell below ActiveCell -- jm ----------------------------------------------------------------------- jmp's Profile: http://www.excelforum.com/member.php?action=getinfo&userid=2903 View this thread: http://www.excelforum.com/showthread.php?threadid=48770 Activecell.Offset(1,0).Select I would not recommend this though. If you want to dele...

HOW TO USE HYPERLINK within a droplist?
I have a question aabout this: eg. I set row A with validation list "yes/no", i want that if choose "yes", then open a word document named "checklist.doc". Instead of using a validation list, you could use a "yes" button and a "no" button. The yes button can be linked to a macro to open the word document. The no button can be linked to a macro the will type the text "Go to next step" or something like that. "Bonny" wrote: > I have a question aabout this: > eg. > I set row A with validation list "yes...

using forms
Vista Home Premium 32 / Outlook 2007 I have created some forms that used to work. No more. On selecting a form, I get "The form required to view this message cannot be displayed. Contact the administrator. To my knowledge, I am the administrator. This is a stand-alone PC in my residence. If I go to Manage User Accounts, it shows only 2 accounts - LastName Administrator and Guest. I have googled my problem and found references to FRMCACHE.DAT which I am told to delete and restart Outlook. Did that. Opened Outlook and tried to open a form. Same error. And FRMCACHE.DAT was not ...

Using Spanish on Publisher
I have copied and pasted a document in Spanish from Word to Publisher. Prompts keep coming up telling me that it cannot "hyphenate" this document. I'm guessing that it means since it's in another language it needs something to be able to spell-check, etc. I really don't care about checking the spelling, but the pop-ups keep interferring with my arranging the flyer I desperately need to get completed. It tells me to put in the disk and download the "hyphenate" feature. Can I download this from the net since I have no disks. Publisher came with my n...

I used Omsgclas.exe Utility and my contacts don't use then new form
I created a new form for contacts. I followed the three steps in the document How to Update Existing Items to Use a New Custom Form. I can click on Action and do new contact and the new form is used. I used Omsgclas.exe utility to change the message class of the contacts. It shows as changed. However, when I click on an old contact (previous to changing the form), A message form comes up (not the old contact form and not my new contact form). Anyone have any help how to get my new form pulled up for old messages? Note: I had a form with a ' in the name, I made a new form w...

Printing Problems (cells printing on top of one another)
When printing cells are merged together like the they have been shifted up half a row height. This problem is restriced to one user on one system (Windows 2000 Pro and Office 2000). The problem is same on a single sheet workbook or a multi sheet workbook. The printer setting keep reverting back to 11 sheet tall by 1 sheet wide. This produces an unclear image through print preview. You can manually reset the default to 1 sheet wide by 1 sheet long which corrects the print preview but not the printed output. I avoid merged cells like the plague - full of problems. I guess that you ...

FormulaR1C1 using variables
I want to do this but can't: ActiveCell.FormulaR1C1 = "=MyFunction(R[variable]C[variable])" What are my options? Try something like ActiveCell.FormulaR1C1 = _ "=MyFunction(R" & CStr(variable) & "C" & CStr(variable) & ")" Cordially, Chip Pearson Microsoft Most Valuable Professional, Excel, 1998 - 2010 Pearson Software Consulting, LLC www.cpearson.com On Wed, 21 Apr 2010 13:52:01 -0700, Cheah <Cheah@discussions.microsoft.com> wrote: >I want to do this but can't: > >ActiveCell.Fo...

Formula staying as a formula in a cell?
Does anyone know why a formula stays a formula in a cell? I know that using the aspostrophe makes it like a string, like '=blah+blah, but this one doesn't...I even have made the cell General and made sure that calculate automatic was selected. This thing is driving me nuts. Any suggestions??? You can't just format the cell as general if it was text to start with. You need to format as general AND then hit F2 and then enter. the other possibility is that you have the Formulas view turned on in Tools / Options / View Tab / Uncheck Show Formulas in Window options. Ideally you...

Using XML with ASP.NET
I want to know where can I find Tutorials/Articles to learn implementing XML with asp.net. I am working on ASP.NET using C# from last one month. I have idea about XML but had not implemented yet with ASP.NET. Thanks in advance. Thanks Vinod Jajoo ...

Change range based on value of a cell
Hi all, I'm trying to do a COUNTIF, but want to change the range depending on a number somewhere else in the spreadsheet. For example, if the number is 3, I want to count from C1:G1, but if the number is 4 I want to count from D1:G1. I've used the address function to find out which cell I want to start from, and then concatenated that to the end point of the range (this never changes). So I'm left with a cell that contains the value of the range (C1:G1 or D1:G1) depending upon the number which is input above. Is it possible to use this cell, which contains the value C1:G1 to repl...

In Excel, how do I insert User Name (author) in a cell.
The function =CELL("filename",A1) returns a file name and sheet name in a cell. How can I obtain the User Name? You can write some VBA to do it. Sub Return_UserName() Sheets("sheet1").Range("A2").Value = Application.UserName End Sub -- Excel_Geek ------------------------------------------------------------------------ Excel_Geek's Profile: http://www.excelforum.com/member.php?action=getinfo&userid=26423 View this thread: http://www.excelforum.com/showthread.php?threadid=398347 And to return just the filename (if you like) you can use this for...

Using lookup formula using more than one cell
I have a spreadsheet which lists clients by first name, last name, postcode and phone number - all in separate columns e.g. Andy Roberts M56 7HN 0161 428 3856 I have these all in one worksheets and in a named range called "Clients" On a separate worksheet (within the same workbook) I log all my enquiries. What I want to be able to do is type in to a cell the first name then in the next cell the last name and the following cells get populated with postcode and phone number based on BOTH of the first two cells by looking up the "Clients" range. I can get it...

Using secured OMA
Hi, Please help me with my misunderstanding. When I try ro connect by t68i or z600 (WAP 2.0) to OMA directly with SSL required, using mydomain.com/oma, of course, I get 403 error. When I use https://mydomain.com/oma I get "Couldn't reach the indicated web server." altough it works fine with Pocket PC. What's wrong? What should I configure to establish secured connection from mobile phone? Best regards, Vit Knyshevich. "Vit Knyshevich" <abuse_vit_knysh@hotmail.com> wrote: >Please help me with my misunderstanding. When I try ro connect by t68i or >z60...

Find values of properties of checkbox
How do you find the values of a property (such as whether or not they are checked) when the check boxes have been created on the fly? Any help would be much appreciated! *** Sent via Developersdex http://www.developersdex.com *** "Mike P" <mike.parr@gmail.com> wrote in message news:OBhh2ds4KHA.1924@TK2MSFTNGP06.phx.gbl... > How do you find the values of a property (such as whether or not they > are checked) when the check boxes have been created on the fly? Is it a Web or WinForms application? If you did not keep a Reference to the checkboxe...

Compile error using CTypedPtrList
Hi, I am having problems at compile time using the following line: CTypedPtrList<CPtrList, CString*> m_ClientList ; When compiled I get the following errors: emailcfgdlg.h(114) : error C2143: syntax error : missing ';' before '<' emailcfgdlg.h(114) : error C2501: 'CTypedPtrList' : missing storage-class or type specifiers emailcfgdlg.h(114) : error C2059: syntax error : '<' emailcfgdlg.h(114) : error C2238: unexpected token(s) preceding ';' I am using the version 6 of the compiler with SP5. Now I think this is something to do with the c...

scatter plots using pivot table data
In older versions of Excel, you could directly create xy scatter plots using pivot table data. In Excel 2000, the chart wizard says you can't use an xy scatter plot with pivot table data. Why????? Is there any way around this limitation? Dan - Don't tell the pivot table you're making a regular chart. Select a cell away from the PT and start the chart wizard. Select the XY Scatter type you want in step 1. In step 2, use the Series tab to select the ranges for the names, X values, and Y values of each series in your chart. Make sure you don't select one of the PT but...

Using resources, how to ?
Hi guys, I am using MS Visual Studio 2005 Express ( yes, the one that u can download for free from MS website ) and I have a "little-big" problem with my program. First of all let me say that I created a simple console program, with his main and few functions, and I wish that my ..exe file can drop another .exe when launched. The other exe is another compiled program, and I wish to handle it from my main program as resource. There are some topics about handling resources, but I cannot find anything of good; I know how to use LoadResource, FindResource, etc, but both fail since I am...

Read value in txt file
Hello to everybody I would like to read a value in a txt file. For example, the value will following the egual sign. So I want to look for language and get "fr" as value. language = fr country = france Thank you by advance and have a nice day. <bcastaing@gmail.com> said this in news item news:389dabc3-ca3b-440b-b55a-a93ca9221025@w16g2000yqw.googlegroups.com... > Hello to everybody > > I would like to read a value in a txt file. For example, the value > will following the egual sign. So I want to look for language and get > "fr"...

Allow temporarily use of right click
I have made a databse in which I have disabled the right-click option. However, I have a form which opens reports, and I want to temporarily allow (only for the opened report) the right click option so the user can save and print the report. I have also no clue how to create a custom menu with only a few of the normal right-click options I hope my question is clear. Thanks -- Message posted via http://www.accessmonster.com "greeknl via AccessMonster.com" <u30909@uwe> wrote in message news:71abb764263d9@uwe... >I have made a databse in which I have disabled the right-c...

Recalc of SUM() that refers to a cell across a range of worksheets
I'm using Excel 2003 w/ SP2 and have encountered a problem I don't recall having before. I have a workbook where a summary sheet is used to aggregate the values in each of the cells in the rest of the sheets by using a formula with following syntax: =sum('sheet1:sheetx'!Cn), where "sheet1" is the name of the first sheet in the range of contiguous sheets, "sheetx" is the name of the last sheet in that range, "C" is the pertinent column letter for a cell (the columns in this workbook represent years) and "n" is the pertinent row numb...

help with cell referencing in named ranges
I have a named range covering about 30 columns of data. I'd like to lookup within the named range based on values in the 1st column, and a specific date which is the label on top of each of the other 29 columns. I have typed in a new column number as necessary, but I'd like to automate the column number by looking at a separate cell which gives the date. Ex: Dates across the top of the named range are 1/1/90, 1/1/91, etc thru 1/1/2003(in sheet1). Lets say I have a cell in sheet2(d1)that has the date 1/1/2003. In that same sheet starting in cell a1 I have a value which ...

How to use interfaces
Hi ... How can you show in an UML diagram using visio that you have 1 class who uses the interface implementet by another ?? ex: C# public class MyClass : ImyInterface { //some code } //And then in another class you will do something like: private ImyInterface imi = new MyClass(); can you show this via UML shapes in Visio ?? thanks in advance ... -- ------------------------------- Med Venlig Hilsen Tonni Schm´┐Żcker Tonni@cool.dk ...