Insert Formula In Range Of Cells VBA?
Sep 6, 2012
i am trying to insert a formula into a range of cells using a For... to loop
This is what it looks like:
VB:
For i=1 To n
Worksheets("Ret_sheet").Cells(i, 8).Formula = "=if(mid(B" & i & ",3,1)=""A"",""PY Campaigns"",mid(B" & i & ",4,3)"
Next i
The row with the formula returns a syntax error.
what the right syntax is? I have read a lot about inserting a formula in a cell using VBA, but i never met the case with a counter (i) usage. I guess the problem might be there.
View 8 Replies
ADVERTISEMENT
Sep 9, 2013
I am try to get the following VBA macro to work; however, I keep getting hung up on errors regarding the formula I am trying to input. It is getting hung up on the apostrophes and dollar signs. I am fairly new to VBA so I am lost when it come to converting my sheet formulas to VBA.
Code:
With ActiveSheet.UsedRange.SpecialCells(xlCellTypeBlanks)
.Formula = "=RAND()*0+VLOOKUP(INDIRECT(ADDRESS(1,COLUMN(),3),TRUE),INDIRECT("'"&TEXT(INDIRECT("$A"&ROW(),TRUE),"DD-MMM-YYYY")&" Inv'!"&"$J:$K",TRUE),2,FALSE)"
.Value = .Value
End With
View 3 Replies
View Related
Mar 29, 2014
Have you ever copy a row with formula in locked cells & insert it in a protected worksheet?
View 1 Replies
View Related
Oct 6, 2007
My macro inserts the formulas correctly up until the last loop where I get an Application Defined or Object Defined error on the .FormulaR1C1 line. The msgbox returns the correct values.
iCtr = 0 'data starts on 1
For c = 6 To 14 'columns F to N
iCtr = iCtr + 1
MsgBox ("Column " & c & " Index " & iCtr)
With . Cells(6, c)
.HorizontalAlignment = xlCenter
.NumberFormat = "#,##0;;"
.FormulaR1C1 = "=IF(ISBLANK(INDEX(MyNamedRange," & iCtr & ",1)),"""",'" & Replace(MainPage.Name, "'", "''") & "'!R" & NextRow & "C6)"
End With
Next
View 5 Replies
View Related
Oct 12, 2007
I am trying to insert a formula into the cells in a column dynamic range.
I never know how long the column will be from instance to instance.
I have been trying to use the following code,
Sub insertf()
'
' insertf Macro
' Macro recorded 10/11/2007 by bbactadmin
'
'
Do Until myrange.Value = ""
ActiveCell.Range("f10").Select
ActiveCell.Offset(1, 0).Range("f1").Select
Range.Formula = _
"=VLOOKUP(LEFT(E11,3),fam,2,FALSE)"
ActiveCell.Offset(1, 0).Range("f1").Select
Loop
End Sub
I am trying to insert the lookup in all of the cells in the column within the dynamic range.
View 8 Replies
View Related
Nov 25, 2007
I am updating a wsheet via a form using vb to locate next empy row etc.
The issue I have is with the formula's no matter how I try I cannot get the formula to increment with each row. I know I can drag and auto fill on the sheet but I want to use vb if poss. eg
Previous entry to sheet:-
A1=1
B1=2
c1=A1+B1(formula)
New entry via form selecting next empty.
A2=(updated from form.)
B2=(Updated from form.)
C2=(Update code VB)
This is all okay and functional the problem starts from here
I so far have been unable to increment the formula in c1 from A1+B1 to A2+B2 using vb, is this possible or am I just chasing my tail.
View 3 Replies
View Related
Jun 3, 2014
Trying to get this short piece of code to work. I'm trying to show the formula in the cell not just return the result.
[Code] ......
Why this isn't working ?
View 5 Replies
View Related
May 29, 2009
I have recorded a macro code for which is as follows. This Macro goes into a worksheet and gives percentile value for a range of data. But this is becoming cubersome as this sheet is 65531 rows and can span multiple spread sheets. Can this be put in a loop of some sort to go through the whole worksheet? ....
View 9 Replies
View Related
Jul 6, 2009
I have a header row, so everything should start at row 2.
If Cell A2 has data, I would like to use VBA to insert the following formula into B2 (this works fine when pasted directly into cell B2):
View 6 Replies
View Related
Jul 21, 2006
I am trying to put a SUMIF formula at the bottom of the data. Doing it manually is fine, but I want some vba to automate it, and my vba doesnt work.
Sub balance()
'adds journal line so journal balances in each month
Dim Rga As Range
Dim Rgb As Range
Dim Rgc As Range
Dim Rgd As Range
Dim Rge As Range
Dim Rgf As Range
This code just inserts text into the formula, rather than the range of cells.
View 6 Replies
View Related
Jun 10, 2008
I have a formula that works fine in the cell of an Excel spreadsheet but I'm struggling to translate it into VBA (your help please).
The cell formula is:
=If(B2="", "", B2 & " (version: " & F2 & ")")
I want to iterate through all rows in my spreadsheet (about 2000) incrementing the relevant row numbers in the formula @ each pass - eg changing B2 -> B3 -> B4 etc and F2 -> F3 -> F4 etc where column 'B' contains the name of the product and column 'F' contains the version number, resulting in "Product Name (version: 123)" per row.
The closest I've got to this is:
Sub LookupNameInColumnA()
Range("A2").Select
Dim i As Integer
For i = 1 To Selection. CurrentRegion.Rows.Count - 1
ActiveCell.Formula = "=IF(B2="""", """", B2 & "" Version: 999"")" ' problem line?
ActiveCell.Offset(1, 0).Select
Next i
End Sub
This works OK'ish but I want each line to reflect the different data per row. I'm struggling to increment row 'B' and row 'F' in the formula, having tried "B & i + 1" and "F & i + 1" but am getting confused with quotes and concatenating strings within formulas.
View 5 Replies
View Related
Jun 19, 2008
I have a sheet that I put a blank row before every change in column G,
Dim lr As Long, i As Long
lr = Range("G" & Rows.Count).End(xlUp).Row
For i = lr To 2 Step -1
If Range("G" & i).Value Range("G" & i - 1).Value Then
Rows(i).EntireRow.Insert Shift:=xlShiftDown
End If
Next i
and now I need formulas in columns B and I in those blank rows. I'm happy to roll it in to the above piece of code, or put it in after.
I don't think I can use LastRow to define my range and replace blanks with formula because of the blank rows. I would need more of a "LastRow with only one blank in between populated rows" if such a thing exists.
The formulas will be ="*"&H3&" DWG "&G3 for cell B2 and =I3 for cell I2.
View 9 Replies
View Related
Apr 1, 2014
I will have a list of unique values. For each unique value, there is an indicator that tells me how many lines of information I need. Based on that criteria, I need a macro to insert that many rows and populate it with text. This will ultimately become a look up table that I will just use index/match function to populate.
I've attached a sample sheet. I'm not sure if I need a macro to insert rows or a macro to paste a copied range. Or maybe I need a mixture of both with a formula to calculate the number of cells I need?
View 9 Replies
View Related
Dec 15, 2008
I am trying to finish off a form that allows a user to insert a row below the selected cell and copy the formula from the line above if one exists. The code inserts the line but does not copy the formulas if they exist.
Application. ScreenUpdating = False
Dim cRow
Dim j As Long
cRow = ActiveCell.Row
With ActiveCell
.EntireRow.Insert
End With
For j = 1 To Cells(1, 255).End(xlToLeft).Column
If Cells(cRow, j).HasFormula Then Cells(cRow, j).Copy Cells(cRow + 1, j)
Next j
View 9 Replies
View Related
Jul 8, 2009
I am in the process of developing a budget template for next year and here is what I want to accomplish through Macro to avoid the tedious mannual manipulation process (hope that's achievable). BTW, I am only an entry-level Macro user who has no background in coding.
I have attached an Excel sample but let me explain:
In each of the expenses tabs (1, 2, and so on (only 1, 2 given in the sample)), I want to be able to select a range of the data cells (A19:Q34 in "Expense 1" and A10:Q28 in "Expense 2") and run this Macro so that:
1. 10 blank rows be inserted between selected data rows
2. A sum created for each month from the four rows below) with different color
3. A Year to Date Actual and To Year End Forecast created based on the VLOOKUP of the "P&L" matching the account code by month
4. Finally grouping of the first 9 rows.
the above is what I have manually created for the first account code in the "expense 1" tab. I have 7-8 expenses groups and about 200 account codes. So mannually creating the above for each expense groups is not that terrible if this will make life easier for Macro.
I would think this is a very typical Macro issue but can't really come up with anything.
The other issue I ran into the VLOOKUP for the YTD Actual and TYE Forecast. It is to look up accont code in the "P&L" tab and match the #s. But the column numbers in the VLOOKUP do not change automatically when I copy across. Thus I have to change mannually, which is really a pain in the butt. I also know I can't copy down because that will change the account code that I want it to match. Because to be able to copy the VLOOKUP formula across the same account code, I need to use the $ to fix the account code. But to copy down I think I need that to be without the $ sign. Any solution on that?
View 9 Replies
View Related
Mar 6, 2014
i need a macro which puts the formulas into the cells as per attached.
the number of rows between the "beam" can be variable
the number next to the beam will be variable.
the number of "beam" rows is vaiable
my thoughts where to do a find"beam" and refernce the cells address the create formulas off those points but dont have the skill to code this
beam macro.xlsx
View 2 Replies
View Related
Oct 6, 2011
I'm trying to create a macro to insert a formula into a specific cell. The formula is meant to check if a cell has text, and then if it does, search for the text on another page.
I had a go at the code, but keep getting Runtime error 13.
I'm using Excel 2010
Code:
Sub new_entry()
'
' NEW_ENTRY Macro
Dim rowNo As Integer
[Code]....
View 6 Replies
View Related
Mar 17, 2014
I have a row data corresponding to the measuring of load cell per min and I need to average the values per hour. So I have a column B for the date (from 1-01-2013 to 31-01-2013, column C for the time (0:00:00 to 23:59:00), and D de values per min I want to average. I have to do the same for the rest of the month of 2013 (February, ...., December).
I would like to know if there is a way to create a formula to calculate the average of the first 60 values (to get the average of the first hour of 1-01-2013), and then copy it to get the average of the following 60 (average of the second hour in 1-01-2013) and so on.
If there is no way to do it, I would like to know if I can do it using functions like average, match, index, offset, what would be the best match of those functions.
I also tried it by doing the analysis in another tab and using the function "averageifs" with two criterias: one for the date (example 01-01-2013) and another one for the hour (example 0:00:00), but it didnt work, it show error: #value. I inserted an extra column in the data tab with just the hour (example 0:00:00) in front of the corresponding column with (example 0:01:00, 00:02:00, etc)
Equation I used for this:
=AVERAGEIFS('Data (min)'!D$6:D$43206,'Data (min)'!$A$6:$A$44646,A6,'Data (min)'!$B$6:$B$44646,B6)
=AVERAGEIFS(TAB AND COLUMN WHERE THE RAW DATA IS,RANGE OF CRITERIA 1,CRITERIA 1,RANGE CRITERIA 2,CRITERIA 2)
View 2 Replies
View Related
Aug 9, 2007
I am trying to write a macro that will insert a formula directly into the cells in column M of my worksheet.
The worksheet has about 3400 rows. When I run the macro it does not adjust the cell reference in the formula so I am getting the same value in all 3400 rows.
I am using the following ....
View 9 Replies
View Related
May 7, 2009
I can use the MATCH function when i am in excel but i am having trouble getting it to work when i am trying to insert the formula using VBA.
Here is the code i have but it wont even compile........
View 9 Replies
View Related
Jan 27, 2014
In a macro I want to automatically insert a formula in several cells. The formula depends on other cells, and I want to be able to manipulate these cells with variables. Here is my code:
[Code] .....
All my variables are declared:
Sheets("DATOS YTD 2014").Cells(I, Semana + 1) is the cell I want to be able to chose due to the variables
Sheets("DATOS YTD 2014").Cells(I, 3) is the reference cell for the VLOOKUP formula, that will vary with I
SheetMonth.Range("B3:W172") is a range in the sheet SheetMonth which is fixed
The error message I receive is the following: "Run-time error 13, Type mismatch"
I precise that the next step is to make the ",6," part in the vlookup formula also variable... but I guess once my current issue is solved this one will be a piece of cake.
View 3 Replies
View Related
Oct 22, 2013
I learn VBA. I have created an If Then statement that works well when applied to a single cell. The formula below would insert "INQ" in cell "B1". How can I apply this same formula to B2; so B2 value is driven by the value in A2, B3 value is driven by the value in A3 and so on. Conceptually, I could write a non VBA if then statement in B2 and drag it down. But I am trying to understand how I could do this through VBA.
Sub Inq()
If Range("A1").Value = "WN" Or Range("A1").Value = "IO" Then
Range("B1").Value = "INQ"
Else
Range("B1").Value = ""
End If
[Code] ............
View 6 Replies
View Related
Feb 27, 2007
I am trying to utilize a formula to add, within a range of cells, any cells that contain P/8 or P/5 or so on. The "P" would stand for PTO and the number behind the slash would designate the number of hours used for PTO. Is there a way to do this. In my chart I need to distinguish time between, PTO, Legacy, Holiday, etc.
View 9 Replies
View Related
Aug 10, 2009
I need a formula that would look at a range of cells (G2:K2) for either 1, 2 or 3.
Then I need it to look at cell O2 for A OR B.
In cell Q2:
If range = 1 OR 2 OR 3, and O2 = A OR B then cell N = "1" if range contains 1, "2" if range contains 2, or "3" if range contains 3.
The range will never contain both 1, 2 and 3 together.
View 9 Replies
View Related
Nov 7, 2008
I am tring to make a formula appear in a column of cells. I am looping through some parts in my Cad program and for everypart it loops through it is suppose to applpy a formula to a certain row the row is incrementing by one each time I loop through a part. This is what i have so far but can't get it all the way. I have used the formula "=TODAY()" just as an example ....
View 7 Replies
View Related
Nov 13, 2012
I have a spreadsheet where I want to filter out a row if the entire row has zeros across all the columns. I cannot just use a Sum() formula because some of the numbers are negative and there is a chance it could zero the sum out.
Currently to do this I am using the following to tell if there are values in each of my rows:
Code:
ABS(K3)+ABS(T3)+ABS(U3)+ABS(V3)+ABS(W3)+ABS(Z3)+ABS(AC3)+ABS(AF3)
Is there any way to write a formula where I don't have to keep adding to the formula when I add another column?
View 1 Replies
View Related
Mar 29, 2013
I have a table that is 10 columns wide. On a separate worksheet I want to display the last 10 rows of the table - 100 cells in all.
Getting the value of one of the cells is easy enough - I used:
=OFFSET(DataTableFirstCell,COUNTA(Sheet2!$A:$A)-1,0)
If I copy/paste, or drag the fill handle to expand the target range I end up with the same formula and same value in all 100 target cells. I know I can edit each cell to modify the offset -1,-1, then -1,-2 then -1,-3 etc but that's mind-numbingly tedious and likely to introduce error.
There must be a way to have a cell reference another, then copy the formula to adjacent cells and and have the result show the content of cells adjacent to the original source.
I've been trying INDIRECT and INDEX with ROW and COLUMN - but I can't work it out.
View 9 Replies
View Related
Nov 13, 2008
There are words in a cell and to its right is a number.
I have a name in P5. I need a formula in Q5 to add all the numbers
next to the same name in Range B4:O46.
Michael
View 9 Replies
View Related
Sep 3, 2012
I am working an Excell sheet. It have many cells with formula like sum of a range of cells etc.
I wanted to divide a range of cells with the given cell (which is inturn having a formula for sum of a range of cells.) want i wanted is to divide a range of cell values with a given cell whose value (number) is obtained through a formula.
when i do
=100*(v65)/v20 for T65 cell and copy the formula for T66-T106 cell range
it is calculating for T66=100*(v66)/v21 and T67=100*(v67)/v22 ........T106=100*(v106)/v61
what I want is all the cells T66=100*(v66)/v20 ... T106=100*(v106)/v20.
View 1 Replies
View Related
May 10, 2014
I have value of 26 in Cell A1, for example and I want to find
whether or not that value falls with a range of cells B1:C2 (which is in another sheet) and if so return the value in D Range.
A1 B C D
26 20 30 100
How would my formula look?
View 6 Replies
View Related