Variable Naming And Looping
Oct 19, 2006
I have a sheet which is using a single input value to calculate an output. On the other side of the sheet, I am using goalseek to find what input value would give me a specific output value - this is pre-set.
Starting in row 12, I am using the macro to paste the goalseek solution into a new column at the end and then resetting the original input value. The macro then moves onto row 13, repeats and loops and so on.
My questions are:
1) how can I get the macro to count the number of rows with data in it instead of fixing it at 217 (as seen in "For x= 12 To 217")?
2) how can I get the goalseek goal to reference a user defined cell instead of being fixed at 37 (as seen in "Cells(x, 13).GoalSeek Goal:=37, ChangingCell:=Cells(x, 5)")?
3) after it fills col15 with the goalseek solution to 37 for all the rows, how can I then start a new loop to tell it to start filling col16 with the goalseek solution to say 50, and then col17 with the goalseek solution to say 55? ..
View 4 Replies
ADVERTISEMENT
May 24, 2012
How do I name a Variable for a formula in VBA? Example: I want to name the results of Cells A1 + A2 = X. Then I want to add C1 + X = and make that results a variable less say Y
I have a very large formula and if I can name varaibles it would be much easier.
View 3 Replies
View Related
Feb 5, 2007
I have a range of data starting in C18, C17 is a label (DivsUsed) the number of rows can range from 1 to a few hundred.
I used the code below to name C18 onwards as a named range with the name DivsUsed and then to use this as a RowSource for a ListBox.
Private Sub UserForm_Initialize()
Dim rangeToName As Range
'Sheet2.Range("C18", Range("C65536").End(xlUp)).Name = "DivsUsed" Tried this too
Set rangeToName = Sheet2.Range("C17", Range("C65536").End(xlUp))
rangeToName.CreateNames Top:=True
ListBox2.RowSource = "DivsUsed"
TextBox2.Value = Sheet2.Range("F2").Value 'This works ok
End Sub
Both tries, and anything else I have tried, give the error " Method 'Range' of object _Worksheet failed".
View 7 Replies
View Related
Mar 13, 2012
I am trying to name a Range in VBA with the following Case statement.
Select Case counter
Case "2": Set Wk(numWeeks) = Range("P1:Q136")
ActiveWorkbook.Names.Add Name:="Wk" & numWeeks, RefersTo:=Wk(numWeeks)
I have many more cases and have defined Wk(5) as a Range. What I am really after it is possible to to name the range using something similar to the code above that uses a predefined variable in the naming process.
View 4 Replies
View Related
Jun 22, 2014
I wonder how to loop and control throught 2 different variables?
[Code].....
I mainly want the macro to do:
[Code] ....
Do not consider the rngList.Cells, but more the mathematical way.
View 4 Replies
View Related
Jun 13, 2014
I would like to create a change event macro that will update multiple formulas that pull data from various tabs on a file. The tabs are named with a single date. So ideally when a certain master cell (Allocation!H2) is updated to the current date the macro will be prompted to update the range that contains formulas and update accordingly...so its and index match fomula based that has a variable being the tab name which is a date. I have a range of dates in cells F4:AB4 and want the formula to go into F5:AB5, I can then fill that down to whatever row I want...that bit I can handle.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim KeyCells As Range
Set KeyCells = Worksheets("Allocation").Range("H2")
[Code]......
View 4 Replies
View Related
Mar 27, 2007
the following code should determine whether the searched value can be found in more than just one row and than enlist certain values from each of those rows in ComboBox4 using a loop. Then I have a second macro which would assign appropriate values from a Sheet to other text boxes whenever one changes the value of the ComboBox4:
Private Sub ComboBox2_Change()
Dim vFind
Dim Firstaddress
Dim rFound As Range
Dim wsName As String
Dim SrchRng As Range
wsName = Me.ComboBox1.Value
With Worksheets(wsName)
vFind = UserForm2.ComboBox2.Value
Set rFound = .Range("B1")
Set SrchRng = .Range("B:B")
Option Explicit
End With...............................
While trying to run the first macro an Error pops up saying that a variable within the loop is not set. I've got no idea how to fix it
View 9 Replies
View Related
Apr 13, 2009
on sheet 1 which is named front cover i want to type in cell C8 a number or a name and it will change sheet 2 tab to what i type i have 20 sheets to do
i can get it working in b5 on same sheet
but i need it to work from the front cover sheet
View 6 Replies
View Related
Sep 15, 2008
My workbook has a summary page and one page for every day of the month. I am making a template file, so I can duplicate it to use every month of the year.
Each week is separated by a worksheet titled "week 1", "week 2" , etc. This is used in the summary page so I can gather totals for a week.
What I want to be able to do is this:
On the first day of the new month, go to week one and type in the date. Then that sheet tab would equal the date, and each daily tab name thereafter would increment the appropriate amount (1day). Then on week 2, it would be equal to the tab value for Friday +3.
The problems I see are:
1. In week 1 the month can start on any on of the 5 worksheets I have set up to cover the week. So any first day coding I need may have to be repeated in the first 5 worksheets
Is this do-able?
2. Tab naming code I have found on this site is not working for dates. 9-15-08 typed into a1 will not translate into the tab, even tho it is a valid name. I am using code VoGII gave which follows: ...
View 9 Replies
View Related
Apr 30, 2009
Can a macro be written that will automatically NAME a sheet with the contents of a particular cell?
View 3 Replies
View Related
Aug 24, 2009
We utilize a shared spreadsheet in our department named "Arrangement Requests".
From time to time and seemingly very random the sheet renames itself. When this happens anyone adding information to it becomes unable to save since the original "no longer exists".
This causes problems because everything we do is in real time and expected to be viewed by all as soon as save has been indicated.
View 13 Replies
View Related
Dec 7, 2006
I have stored the name of 12 different userforms in a col of spreadsheet.
I want to use the text in these cells to choose the required Userform.
I have tried:
FormName=range("A12")
FormName.Show
but that gives run time error 424, 'Object Required'.
View 9 Replies
View Related
Jul 15, 2009
Ok I have an input box that takes a date as mm-dd-yy
View 14 Replies
View Related
Dec 1, 2009
make the auto naming code displayed on the worksheet tab die after first entry into, so that regardless whether any values are changed in the worksheet--a minute, hour, day after-- the "namedate" stays the same.
View 3 Replies
View Related
Feb 21, 2009
Attempting to modify a list of names. Currently they are last name, first but I want to compare to another list that is first name last.
Ex:
Billingsley, George
formula to change to:
George Billingsley (no comma)
View 5 Replies
View Related
Feb 16, 2012
Is there a way to name a new tab without knowing its name. For instance, when I create a new tab, it could be named "Sheet2" or "Sheet3", but there is sometimes no way to know. Is there a way to edit the name of that new tab without refering to it by name?
View 1 Replies
View Related
Feb 8, 2007
regarding this article:
[url]
Is there a way to name a tab with some combination of 2 or more cells?
A1="first"
B1="last"
so, the tab name would be "firstlast".
also, can a space be inserted?...i.e. A1&" "&B2
View 9 Replies
View Related
Jun 6, 2007
I want to use the range in this code that works fine in one work book from sheet to sheet...
But i need it to run across 2 workbooks that are both open at the same time... The data its bringing back will be in a seperate workbook.
Sub zzzz()
Sheets("Sheet2").Select
Range("A3:M16").ClearContents
c = 3 'Paste Range Return Test
x = Worksheets("sheet1").Cells(Rows.Count, 1).End(xlUp).Row 'data source
For a = 1 To x
If Worksheets("sheet1").Cells(a, 3) = Worksheets("sheet2").Range("a1") Then
For b = 1 To 20
Cells(c, b) = Worksheets("sheet1").Cells(a, b)
Next b
c = c + 1
End If
Next a
'Range("C3:C15,F3:F15,I3:I15").Select
'Selection.Delete Shift:=xlToLeft
Range("A1").Select
End Sub
View 9 Replies
View Related
Jul 26, 2007
I have a spreadsheet which has four columns and numerous rows
Example:
Location - Desc - Price - ID#
Electric - Duplex Outlet - $5.00 - 12-0001
I would like to use VBA to name ranges. I need to name the Desc., Price, and ID# columns separately and want to use the Location and the headings of each column as the name range. Example - the column containing Duplex Outlet would be named ElectricDesc.
This is what I came up with, but need to figure out how to make "add name" a formula combining Location+Desc. I tried concatenate (B1,A2) but it did not work.
ActiveSheet.Names.Add Name:="MyRange1", RefersTo:="=$A$1:$B$10"
View 10 Replies
View Related
Aug 20, 2007
To automatically make the name of a sheet tab the same as in cell A8 of the same sheet, I'm currently using the following code ...
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
ActiveSheet.Name = Range("A8")
End Sub
however, I find that if I change the name that is in cell A8, the tab name doesn't change accordingly.
I need a code that will name the tab whatever is in cell A8 but also be fluid enough to change the tab name if the contents of cell A8 changes.
I do not want this code to operate all sheets, but only a few.
View 8 Replies
View Related
Apr 30, 2008
Is there a way to name a sheet in vba? I am creating new sheets in vba, and renaming these tabs, but is there a way to actually rename the sheet (so that in the properties window it says (Name) "Demand" AND Name "Demand" Instead of (Name) Sheet1, Name "Demand"?
View 9 Replies
View Related
Dec 22, 2008
Basically my code creates a load of checkboxes and I need to name them appropriately as they will be used in the next part of the code.
I haven't had a problem changing the caption properties etc but I need the name to be meaningful and unique - it works fine if I just want each checkbox to be called i.e. "CB1" etc but I want the name to be derived from a range within the worksheet.
Below is an extract from the
the_row = 10
For Each Item In ActiveSheet.OLEObjects
If Item.progID = "Forms.CheckBox.1" Then Item.Name = WorksheetFunction.Substitute(ActiveSheet.Range("C" & the_row).Value, " ", "_")
If Item.progID = "Forms.CheckBox.1" Then Item.Object.Caption = ""
If Item.progID = "Forms.CheckBox.1" Then Item.PrintObject = False
the_row = the_row + 1
Next
Column C contains the name which is unique to each checkbox, I simply need to replace any spaces with "_" but when I am not defining a set text string the name of the checkbox does not change.
View 9 Replies
View Related
May 14, 2003
I'm in the process of writing some SQL in excel and normally when I want to specify a field name as another name say wx22 as Part Number i just use square brackets eg
"select wx22 as [Part Number]"
View 9 Replies
View Related
Oct 12, 2006
how to name a chart? I've been accessing charts in my VBA scripts using chart names, e.g. "Chart 4". I've been determining the chart name by recording a macro and selecting the charts. But, is there a way to either:
1- change the name of a chart (as you would name a pivot table)
2- determine the name without having to select the chart in a recorded macro
3- reference multiple charts from the same worksheet without using their names
View 4 Replies
View Related
Jan 31, 2007
A userform listbox places names in a column in Sheet2, starting with cell E1 and subsequent transfers from the listbox (which is multiselect) going to F1, G1 etc. There will be between 6 and 15 names in each case.
A seperate textbox is used to assign a number to each multiselection, this number is added to "Div" and placed in row 22 of the column to which the multiselection is transfered.
The text in this cell is used for other things later but I also want to use it to Name the range to which it refers. This name is then immediately used to populate another listbox in the userform, and will be used repeatedly later on in the project.
Here is the relavant snip of code that I have been trying to get to work but I get 'object required' for the ActiveWorkbook.Names.Add.......... line. I did manage to get rid of that once (can't recall how!!) but then the ListBox2,RowSource gave an error.
Set DvNm = Sheet2.Range("IV1").End(xlToLeft).Offset(21, 0)
Set Rngc = Sheet2.Range("IV1").End(xlToLeft)
Set Rngp = Sheet2.Range("D65536").End(xlUp).Offset(1, 0)
DvNm.Value = "Div" & TextBox1.Value
Range(Rngc, Rngc.Offset(15, 0)).Copy
Rngp.PasteSpecial (xlPasteValues)
Application.CutCopyMode = False
ActiveWorkbook.Names.Add Name:=DvMn.Value, RefersToR1C1:="Range(Rngc, Rngc.Offset(15, 0))"
View 5 Replies
View Related
Apr 20, 2009
Is it possible to name a worksheet tab from a cell reference on a worksheet?
View 6 Replies
View Related
Mar 13, 2014
What I want to be able to do is,,press the Q key and either Q1, Q2, Q3 or Q4 based on certain parameters appear in that cell.
In column A of my spreadsheet heading 'Quarter', I want to be able to specify which quarter of the year a request was made,,so when I press Q
> if the date is within 01/01/14 and 31/01/14 'Q1' will appear
> if the date is within 01/04/14 and 30/06/14 'Q2' will appear etc,,I'm sure you can workout Q3 and Q4,,
Ive named a cell A1 'TODAY' for reference it has the formula =TODAY() in it and shows whatever the date,,
I have looked at the DATE commands available but I don't think any could do what I need, that's why I was thinking I needed a piece of VB code,,
View 2 Replies
View Related
Mar 27, 2014
I have a table. I have added a new column on the far right, and as I don't know how many columns my table has I simply use:
[Code]....
Now I want to assign a name to that column; but as I don't know the column position, or number, how do I do that???
Now I need to place some information in the cells in that column. If I know the position of the cell we just placed the header name in, I know I can use offset to accomplish this, but:
How would I know the location of that cell other than running a "Find" on the entire header row.
Is this the easiest/most efficient way to do so?
View 1 Replies
View Related
Nov 28, 2007
How could the following AddName function be edited to use the range selected in the upper portion of the code?
View 9 Replies
View Related
May 7, 2008
I have 20 worksheets all with the following as code to name the tabs:
View 8 Replies
View Related