Dynamically Alter Macro Based On Tab Name Or Cell Value
Feb 1, 2014
I have a workbook with several tabs. One tab is named for the year eg 2014. Annually, I open the workbook, rename to the new year and rename the year tab to the next year eg 2014 to 2015. All the dynamic range names update as expected. Sheet2(2014) becomes Sheet2(2015). However, a line of macro code does not change and errors out because the year does not change.
Is there a way to dynamically modify the '2014' sheet reference to reflect the renaming of the year tab eg to 2015 or to reference a helper cell named YEAR?
The cell referenced above R332C1 is dynamic.
I have tried writing the above line many ways based on internet research but no success. I suspect I can use a LEN function to actually modify the line of code but I'm not sure its even possible to alter a macro dynamically to meet my needs here.
View 6 Replies
ADVERTISEMENT
Apr 2, 2014
I've managed to get coding that allows me to insert single rows dynamically based on a cell value. Example is if I enter a value in cell C3 the coding inserts the same number of rows below.
I've also created a simple macro that inserts a multiple row block under the active cell, complete with formatting, text and some merged cells. Example is I run the macro and it will insert a block of 3 rows, complete with formatting, borders, text and merged cells.
My challenge is to bring these two elements together. So enter a number in a single cell which will then insert the same number of row blocks, complete with formatting etc. I've added a file to sample what it is I'm trying to achieve. I can add the coding I already have as well.
Dynamic list sample.xlsx‎
View 2 Replies
View Related
Jul 10, 2009
I do have a data set from A1:C8 as follows:-
Brand Name(A1)Sales Value(B1)Margin(C1)Levi's100002000Arrow150002500Allen Solly120001300Hanes80001000John Miller250004500Disney280003200Ray Ban180002100
The above brands are categorized as follows:-
Brand NameProposed CategoryLevi'sConsignmentArrowBrandAllen SollyBrandHanesBrandJohn MillerPrivate LabelDisneyBrandRay BanConcessionaire
I would like to put formula from D1:D8 in such a way so that the Proposed categories are extracted automatically through formulae. This will help in getting the contribution calculated from different categories.
Brand Name(A1)Sales Value(B1)Margin(C1)Category(Desired Result)(D1)Levi's100002000ConsignmentArrow150002500BrandAllen Solly120001300BrandHanes80001000BrandJohn Miller250004500Private LabelDisney280003200BrandRay Ban180002100Concessionaire
View 9 Replies
View Related
Dec 16, 2007
I am looking for a solution to dynamically create named ranges according to the contents of cells in a particular column. The following code works for 1 word names, but in many cases the title cell contains numerous words separated by spaces. Is there a way I can adapt this code so that it will name the ranges with the spaces removed? For example, where cell C2 contains the narrative 'Sales Ledger Control', I would want the range name 'SalesLedgerControl'.
Range("R2:Z2").Name = Range("C2")
The named ranges are referred to in numerous other worksheets, where selecting a particular narrative from a listbox creates a dependant drop-down in the adjacent cell (eg if Sales Ledger Control is selected, the dependant list contains names of customers). FYI, the data validation in the other worksheets ignores the spaces in the range names, ie: =INDIRECT(SUBSTITUTE(G2," ",""))
It would not take me long to name the ranges manually, but a macro is preferable because the narratives in the title cells will often change and the range names will obvioulsy also therefore change.
View 4 Replies
View Related
Feb 24, 2014
I wanted to enter value in sheet1 on A1. Columns in sheet2 from B1 until the value entered in sheet1.A1 should be automatically filled.
E.g.
Sheet1.A1=5, then Sheet2.B1=1, Sheet2.B2=2, Sheet2.B3=3, Sheet2.B4=4, Sheet2.B5=5.
if Sheet1.A1=3, then Sheet2.B1=1, Sheet2.B2=2, Sheet2.B3=3.
if Sheet1.A1=7, then Sheet2.B1=1, Sheet2.B2=2, Sheet2.B3=3, Sheet2.B4=4, Sheet2.B5=5, Sheet2.B5=6, Sheet2.B5=7
etc.
View 2 Replies
View Related
Feb 17, 2009
I want to write a formula that inserts a column and then does a vlookup in that new column using the cell just to the left of it as the first variable. The problem is, this could be in any random column so I can't do a static reference to $A2 as an example. So, my question is...
Instead of using =vlookup($A2,Sheet1A1:B50,2,false)
How do I replace the $A2 part with some code that says, "the cell to the left of here..."
View 7 Replies
View Related
Apr 27, 2014
The Macro Sub Match() works great, it is blazing fast.
It matches Col B on Sheet(1) to col B on Sheet(2) and returns the match from sheet(1) to sheet(2) by inserting a col D in sheet(2) and returning the match found to the row at which it was found in col B.
But I need to return not just the matching name from col B but the cells on the same matching row from col C, D, E, F, G, H ,I from sheet(1)
I do not understand to code well enough to do this
I am trying to replace this which is very slow
[Code] .....
View 4 Replies
View Related
Dec 24, 2008
I have a sheet used to process sales orders - about 500 orders per month x ~1.5Mb each. I want to save them as smaller files.
The sheets to save are full of vlookups linked to external sheets and tabs, other formulas, and macros - most of which do not need saving when the sales order is filed. There are lots of merged cells too.
I must save:
1. Cell values
2. Cell formats incl merged cells, borders, colour, font etc.
3. The row and column sizes
4. Print set ups - print area, margins, page setup, header footer etc - (Everything needed to reprint to same as original)
I think I need a "File save as" style Macro which opens a dialogue box for the user to nominate the destination folder (& allows the user to browse for it), and a new file name.
The original file name is "Job Sheet - Omlaw.xls"
The tab/sheet to save is "Front Sheet"
(There are two other tabs - neither of which need saving.)
All cells to be changed to "locked".
The sheet must be password protected in Excel. User to enter it - or not.
The saved file should be "write protected" if possible?
View 7 Replies
View Related
Aug 2, 2006
I have a spreadsheet which I use a number in cell E4 which can be an integer for instance let's say E4=9.
I want to go down a column and get the sum dynamically for let's say when the cell in E4=3.
The range in column G starts at G27. I then want to return the dynamic value to cell E3.
What is the best way to accomplish this using vba code?
View 9 Replies
View Related
Sep 19, 2009
I need to changing the time data in my Time of Turn. I would like to subtract one hour from every data entry in the column Time of Turn, ie from 9:35 to 8:35, 9:55 to 8:55, etc. How would this be done with a macro for the entire workbook?
View 7 Replies
View Related
Oct 5, 2008
in my spread sheet i am trying to use the if function to compare the current time ( vb code used) to a time i enter to alter another cell.
for example
if A1(current updating time) = A2 ( time i choose) then
B1( some value ) = B2( another value)
the point of this equation is to have B2 update its value from B1 every day so today B2= 3 and B1 =4 then tomorrow B2 would = 4 etc , i just dont know how to do it.
View 9 Replies
View Related
Jan 15, 2012
I have to filter a data based upon the selection list value.
Ex:
Assume that i have 4 values listed in my SELECTION LIST
INDIA
US
UK
AUS
If i select "US" in selection list ...Filter has to take this dynamically and filter the data..
View 2 Replies
View Related
Jan 3, 2007
I need to have excel dynamically rank items based on two criteria’s (category and sales).
For Example:
I have a list of items with its category in column A, column B has the sales information. I need to rank the items by category and sales, the data is not sorted and I cannot use a macros/VB.
View 9 Replies
View Related
Sep 17, 2013
Is there anyway I can make excel scale a set amount of information between page breaks fit 1 page wide 1 page tall? using a macro.
FT000010
SPAX SCREWS 1000pc TRADE PACK
Llandeilo
4
0
[Code]....
I essentially have this data repeated multiple times depending on how many products I am looking at, I would like this repeated 3 times per page, which is where the page breaks are currently being placed. When i tried to set Width 1 page the automatic page breaks would only allow two of these per page at 100% scaling.
View 1 Replies
View Related
Jan 2, 2012
I have used this code a number of times to automatically change the scale of x axes without problem. I have just used it however and it has condensed the data so that it the line only appears in the last quarter of the chart.
Code:
Option Explicit
Sub ChangeStaticAxisScales()
With Sheets("Static Charts").ChartObjects("Chart 2").Chart
' Value (Y) Axis
With .Axes(xlValue)
.MaximumScale = Worksheets("Raw Data").Range("AN7").Value
.MinimumScale = Worksheets("Raw Data").Range("AN6").Value
.MajorUnit = Worksheets("Raw Data").Range("AN8").Value
End With
End With
End Sub
View 3 Replies
View Related
Oct 7, 2007
I have a macro, it imports data from a text file and separates the data from the text file into columns. My issue is that it automatically picks a fixed filename. I would want to manually select a filename from different directories.
Below is my macro: ...
View 9 Replies
View Related
Apr 1, 2014
creating macro dynamiccally on keypress and execute it
i have 3 excel sheet sheet1, sheet2, MasterSheet
MasterSheet conatins the following
COLUMN A COLUMN B COLUMN C
Colorcode FLAG SKEYS
RGB(121,223,214) A Ctrl+a
RGB(125,228,114) B Ctrl+b
[code]....
I have 3 columns column 1 contains colorcode in RGB format column 2 Contains FLAG and column 3 contains SHORTCUT KEYS
i have a macro in sheet1 & sheet2 for coloring the backgrouf color of the selected rows in sheet1 or sheet2
Code:
Sub Macro_color()
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = RGB(234, 241, 221)
.PatternTintAndShade = 0
End With
what i need is when th user presses say Ctrl+c , RGB(233,129,220) from the MasterSheet needs to be copied in the macro as .Color = RGB(233,129,220) instead of RGB(234, 241, 221) and the selected row in sheet1 shld be colored. how can it be done
View 1 Replies
View Related
Apr 1, 2008
I have 100s of name ranges in my spreadsheet. I am using a series of drop down boxes for the user to select the info that they want to see. Based on the dropdown box, the macro "dynamically generates" a range name from which to pull the info.
For instance, if they Select Manager = Terry, Analyst 1, and Month = Jan, then the range name would be JanTA1
The if statement would dynamically create this name by concatenating the info
If manager = Terry
mnger = "TA"
if analyst = 1
anlyst = 1
if month = Jan
mnth = "Jan"
rangename = mnth & mnger & anlyst
So, I am dynamically creating the range name based on user selections...then to display it, I want to set the display cell = to the value
Range("display cell").Value = Range(rangename).Value
The problem is, I am getting an object error every time I try to refer to a range this way.
If I type:
Range("display cell").Value = Range("JanTA1").Value, it works
View 9 Replies
View Related
Apr 9, 2008
I am trying to dynamically add controls to my user form based on some values in my cell. I am successfully able to create a text box dynamically but my label is not getting displayed. here is my code
Private Sub UserForm_Activate()
On Error Resume Next
If (ThisWorkbook. Sheets("Sheet2").Cells(1, 8) <> "FALSE") Then
Dim ctl As Control
Dim ctl1 As Control
Set ctl1 = Me.Controls.Add("Forms.Label.1", ctl1, True)
With ctl1
View 9 Replies
View Related
Jul 13, 2009
I basically am trying to just reference another cell (from a pivot table) from another sheet. ='SHEETNAME'!G5
But I Need the G to change... I basically need
='SHEETNAME'! + E29 + 5 to equal
='SHEETNAME'!G5 assuming G is in E29 but am not sure how to do this.
The other option is to use =GETPIVOTDATA("Sum of Amount_19",'SHEETNAME'!$A$3,"Label","Title") but I need "Sum of Amount_19" to change based on another cell, lets say F29.
View 3 Replies
View Related
Dec 15, 2008
Starting at cell H4 and down, I have data pasted to whatever last row, this is a helper sheet/vba thing that helps to create the Case Statement for SQL queries, we have many of them, broken into Pages. So this works great, grabs the data and puts 'data','data2'
The only thing is that in the last data cell in the loop, it leaves off an extra comma, as in:
'306','307','308','309','310','311','312',
I need help in removing that extra comma if there is nothing left to process in the loop so it would look like this:
'306','307','308','309','310','311','312'
Sub Test_Range_Loop()
Dim x As Variant
Dim rng As Range, cel As Range
Dim lr As Long
lr = ActiveSheet.Range("H" & ActiveSheet.Rows.Count).End(xlUp).Row ' find the last row from the bottom-up using H
With ActiveSheet
Set rng = .Range("H4:H" & lr)
For Each cel In rng
x = x & "'" & cel.Value & "',"
Next
.Range("I1").Value = x
End With
End Sub
View 9 Replies
View Related
Feb 14, 2013
The way I have try to define lastcell is wrong. But I don't know how to do it.
Code:
Sub createUniqueRecordID_2()
'
' fill using CTRL + ENTER
'
Dim lastcell
Sheets("projects list").Select
[a1].Select
[Code]...
View 1 Replies
View Related
Jul 25, 2006
I am trying to get the following routine to work. I need this formula to run dynamically when a user changes cell F27.
Sub PotentialUnitSales()
'Dim x As Range
Set Range("J27:J200") = "R[1]C[5]-(RC[5]-RC[3])"
'Range("J27").FormulaR1C1 = "R[1]C[5]-(RC[5]-RC[3])"
rng = Range([J27], Cells(Rows.Count, "J").End(xlUp))
End Sub
View 4 Replies
View Related
Jan 12, 2007
I've searched the forumn but have found no resolution to my dilema. I'm trying to accomplish the following:
I would like to apply an Alternate number to a job that meets a certain criteria. The criteria is based on a Marker, which should be automatically determined based on the count of total jobs that are Estate or Custom. The Alternate number needs to be applied to certain % of the Jobs. What I've done is to get the count of jobs Estate or Custom then based on the count I have applied the Alternate % to determine the actual number of jobs that should have the marker applied. Here is where I need the help. The next step would be be to apply the marker to the number of jobs. I'm not sure how I can accomplish this task. Attached is an excel spreadsheet with an example of what I'm trying to achieve as well as what the end result should look like.
View 9 Replies
View Related
Apr 23, 2008
In Excel have a customer list, and notes associated with each of them. On my form, where I perform a search (by customer name), I would like to link the Text Box to the cell with notes. How can It be done dynamically?
View 2 Replies
View Related
Oct 27, 2009
i need to be able to alter the tab which is specified in a VLOOKUP command depending upon which value is given in a drop down box.
ie if the drop down box reads 2 the VLOOKUP should search for an item reference given on tab 2 etc.
View 3 Replies
View Related
Jun 17, 2008
I have a userform called "DBQuery" and textbox in that called "Query".
What i need is a piece of code that will search the text in the box (after update of course) and Capitalise certain words (SQL ones like "SELECT, FROM, WHERE, AND, IN, LIKE, IS, NOT") and chenge the font colour blue?
View 14 Replies
View Related
Mar 6, 2014
Using Dropbox, a lot of people will fill in formulas in personal workbooks from using data from another, central workbook. Since I cannot control where they install Dropbox or where they keep their personal workbooks, I must account for that in functions.
Now, my idea is to make them define the directory of the source in their personal workbook in a specific cell and then using that as a basis for the rest of the functions.
Example
Cell A1: C:Usersuser1Dropboxfolder (copy paste from path in Windows Explorer)
Cell B1: A1&[CentralWorkbook.xlsx]SheetName'!$H$1
Basically I want the unknowing user to copy-paste the path of the central workbook into a specific cell in their own workbook and then build my functions bsed on that. How can this be done?
View 2 Replies
View Related
Apr 14, 2008
My Example
I have Master Book1 which has external links to Book2, Book3 and Book4.
My Formula in Cell B2 is ='D: empxl[Book2.xls]Sheet1'!$A$1
In Cells A1, A2 and A3 I have the text entries 2, 3 and 4 respectively.
Is it possible to use these Text entries to update the Formula I plan to copy down from B2 onwards?
i.e. Formula would read something like ='D: empxl[ Book"A1".xls]Sheet1'!$A$1
View 4 Replies
View Related
Nov 12, 2009
I'm currently trying to create a rota timesheet which automatically takes shift patterns and deducts for unpaid breaks.
Basically if a shift is less than 4.5 hours long then no break is deducted
If the shift length is 4.5 - 6.5 hours then 15 mins are deducted
If the shift is longer than 6.5 hours then 30 mins are deducted.
View 4 Replies
View Related