Insert Formula Into Non Contiguous Range Via VBA Macro

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


ADVERTISEMENT

Insert Formula Into Range Macro

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

Macro Code To Insert Relative Formula Into Range

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

OFFSET Non-Contiguous Named Range In Formula

Jul 14, 2012

I have as the two logical operators for an IF function the following COUNTA calculation which checks how many blanks are in the range GrdMtx7 and subtracts this from the value in E5 and adds the suffix "Module(s)".

Code:

(E5-COUNTA(GrdMtx7)-1)&" Module(s)",(E5-COUNTA(GrdMtx7)&" Module(s)")))
GrdMtx7 is a non-contiguous range consisting of the following cell references on a second sheet:

Code:

='Mod Schedule'!$E$7,'Mod Schedule'!$H$7,'Mod Schedule'!$K$7,'Mod Schedule'!$N$7,'Mod Schedule'!$Q$7,'Mod Schedule'!$T$7,'Mod Schedule'!$W$7,'Mod Schedule'!$Z$7,'Mod Schedule'!$AC$7,'Mod Schedule'!$AC$7,'Mod Schedule'!$AF$7,'Mod Schedule'!$AI$7,'Mod Schedule'!$AL$7,'Mod Schedule'!$AO$7,'Mod Schedule'!$AR$7,'Mod Schedule'!$AU$7,'Mod Schedule'!$AX$7
I need for the formula of the IF function to copy down so that it refers to F5, G5, H5, I5...etc.

I also need for the non-contiguous named range GrdMtx7 to refer to the same non-contiguous range shifted down one row intact for the COUNTA function to operate on the next row down, such that COUNTA is checking for blanks in the range:

Code:

='Mod Schedule'!$E$8,'Mod Schedule'!$H$8,'Mod Schedule'!$K$8,'Mod Schedule'!$N$8,'Mod Schedule'!$Q$8,'Mod Schedule'!$T$8,'Mod Schedule'!$W$8,'Mod Schedule'!$Z$8,'Mod Schedule'!$AC$8,'Mod Schedule'!$AC$8,'Mod Schedule'!$AF$8,'Mod Schedule'!$AI$8,'Mod Schedule'!$AL$8,'Mod Schedule'!$AO$8,'Mod Schedule'!$AR$8,'Mod Schedule'!$AU$8,'Mod Schedule'!$AX$8

I can't get got to work at all using OFFSET and would rather not create dozens or hundreds of named ranges incrementing one at a time - is there a way to achieve this, preferably with a formula, but vba if absolutely necessary.

My best effort doesn't work:

Code:

(E6-COUNTA(OFFSET(GrdMtx7,1,))-1)&" Module(s)",(E6-COUNTA(OFFSET(GrdMtx7,1,)))&" Module(s)")

View 2 Replies View Related

Macro: Count Non-Contiguous Range

Dec 17, 2006

I'd like to count non blank cells in 16 separate ranges (each range consists of 6 consecutive cells). The first range in the series is C9:H9. 3 cells are then skipped and the process is repeated with the next range, ie L9:Q9 then skip 3. The last range in the series of 16 is therefore EK9:EP9.

If the value of non blank cells = 2 in any of these 16 ranges then copy the contents of this range to C24:D24 in sheet " Record Form Games 3583". If C24:D24 is not empty copy these values to C25:C26.

If the value of non blank cells = 6 in any of these 16 ranges then copy the contents of this range to C22:H22 in sheet "Record Form Games 3583". If C22 is not empty copy these values to C23:H23.

The ranges colored yellow in the example workbook are the ones that need to be copied to the sheet Record Form Games 3583.

View 9 Replies View Related

Macro: Copy Non-Contiguous Range Of Cells

Aug 24, 2008

I want to be able to copy cell D4, I4, G10, G12 etc from one spreadsheet and paste into another spreadsheet in the same locations as the source.
Is there a macro that will do this?

View 9 Replies View Related

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 View Related

Insert Formula In Dynamic Range

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

Insert Relative Formula Into Range Via VBA

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

Insert And Show Formula With Named Range?

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

Macro To Insert Row Across Range Of Worksheets?

Apr 16, 2014

I have run into a problem with a Pivot Table overwriting other content when new data is added and refreshed.

This pivot table is included across a range of "Product" worksheets. To resolve this issue I would like a macro to insert a new row below the pivot table , this way when new content is added the pivot table will not overwrite the content below it.

The Pivot Table data is on the "Client" worksheet. Each Product worksheet includes a Pivot Table referencing the the Client data. I would like to force a user to add a new client data with a macro this way I can force a new row to be inserted across All "Product" worksheets.

View 3 Replies View Related

Grouping Contiguous List Into Non-Contiguous Groups

Sep 9, 2006

I would like to be able to count the amount of entries in column C and depending on the amount group them in either groups of 3 or 4, all names would be unique...so if there are 14 names in the list they would need to be grouped in to two groups of 4 and two groups of 3, if there were 19 then 4 groups of 4 and 1 group of 3 etc to a maximum 50 people, the results could appearon a seperate worksheet say pasted on to the worksheet starting with the groups of 3 (so paste a group of 3 then skip 3 rows then paste groups of 4 skip 2 rows, the row skipping is to allow seperation and manual entry of extra data). There will never be groups of 5 or more and never less than 3

View 8 Replies View Related

Macro To Insert Formula

May 1, 2014

I once heard that in order for a macro to insert a formula you must double all the quotations. Anyway, i did so in the following macro but i got an error message.

View 3 Replies View Related

Insert Total Formula Using SUMIF And Named Range

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

SUMIF Non-contiguous Range

Jan 8, 2006

Range:
C3,C14,C25,C34,C41

Criteria:
>0

sum-range:
C3,C14,C25,C34,C41

I can't get that to work since the commas in the range are throwing the function off.

View 14 Replies View Related

SUMIF Non-contiguous Range

Jan 8, 2006

range:
C3,C14,C25,C34,C41

criteria:
>0

sum-range:
C3,C14,C25,C34,C41

I can't get that to work since the commas in the range are throwing the
function off.

View 13 Replies View Related

Finding Last Row Of Non-Contiguous Range?

Aug 17, 2012

I know how to find the last row of a continuous range. it's simply:

Code:
someRng(someRng.Count).row

How do you find the last row of a non-contiguous range though? Assume the range is vertically laid out and I don't want to do any looping.

View 9 Replies View Related

Resizing Non-contiguous Range

Apr 8, 2008

Is it possible to re-size a non-contiguous range? I'm guessing "no", and a Google trawl hasn't provided me with anything.

Here's what I'm trying to do:

dim mult_rng as range
dim rng2 as range

set mult_rng = range("A1:B1,D1:E1")
set rng2 = mult_rng.resize(rowsize:=10)
That is, my original range is comprised of non-contiguous cells in the same row. When re-sizing, I'm trying to increase the number of rows, but leave the columns the same.

Like I said, my gut instinct says that this isn't possible using the 'resize' property. Can anyone think of another method to use? My constraints are that the original mult_rng isn't always the same (and isn't always non-contiguous).

View 9 Replies View Related

SQL Queries To Non-contiguous Range

Oct 3, 2009

I want data to columns A, C and E, while I have important data in columns B and D. Should I make three queries? Should I make query and save the results to temporary place and then move all the results to those columns A, C and E?

Right now the copying happens like this:

If Not rsData.EOF Then
rngTarget.CopyFromRecordset rsData
Else
MsgBox "No records returned.", vbCritical
End If

So should I do
1) One query and move everything in the right places
2) Multiple queries
3) Something else

Does this depend a lot about how many results I expect? I'd say likely about 100, maybe less than 1500, never more than 10000

View 9 Replies View Related

Macro To Insert Formula And Fill Down To Last Row?

May 21, 2014

I need a macro that will insert this formula: =Trim(IF(B3="","",MID(B3&", "&B3,FIND(" ",B3)+1,LEN(B3)+1))) into column C starting on row three through the end of the spreadsheet information.

I typed this incorrectly when I first posted. I need it to fill down into only column C not the end of the spreadsheet.

View 14 Replies View Related

Macro To Insert Column / Formula?

Feb 18, 2012

I need a macro that will insert a column next to column B, and insert formulas into the new respective cells. forumula needs to be in the macro, it won't be located somewhere else on the sheet (for simplicity's sake, let's just say the formula is =A1+B1, then A2+B2 in the next row, etc). Also, it needs to stop inserting formulas when there's no more data in column B.

View 1 Replies View Related

VBA - Insert Formula With Sheet References In All Blank Cells In Used Range?

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

Find Blank In Non-Contiguous Range

Mar 19, 2013

Need code that will search non-contiguous range for first empty cell, paste data into found cell and data into offset cells and end search. If not empty, move to next cell in non-contiguous range. If NO empties are found in entire range, a msgbox.

Non-contiguous range: Range("B2,B32,B62,B92,B122,B152,B182")

Pasted data: 1st range into found empty, 2nd range into range offset of empty.

View 9 Replies View Related

Vlookup On Non Contiguous Named Range

Jan 20, 2010

I'm trying to do a vlookup on a non contiguous named range.

I have a non contiguous named Range called "temp".

View 6 Replies View Related

Assign A Non Contiguous Range To An Array

Jan 25, 2009

When I insert a line to select the range on the Worksheet it does select the range named as temp. However, the array does fill but only with the first part of the range eg in this case A7:C44.

My aim is to create an array of size point1A( all the rows in the multiple ranges, 3 columns).

Example of a Range to be assigned to the Array point1A. temp = "A7:C44,D7:F44,G7:I44,K7:M44,N7:P44,Q7:S44,"

View 6 Replies View Related

Creating Non-contiguous Range Without Duplicates?

Jun 4, 2012

I am trying to create a large range composed of smaller ranges. Some of these ranges may overlap so I want to make sure when I add cells to the range they don't already exist. I know how to make sure the same value doesn't exist in a range, but not the same cell.

View 2 Replies View Related

Manipulating On A Range Of Contiguous Rows Using VBA

Apr 13, 2008

I have a contiguous range of rows starting from row 5. ...It starts from row 5 but could end anywhere below.

The name of my Sheet is Tester.

Now in Tester, columns B,C, and D have numerical values in them. Using VBA, how can put in values in corresponding row of column A.

So if there are values from B1:D39 and B40 onwards is empty, then A1 will have value B1*C1*D1, then A2 will have B2*C2*D2 and so on until A39 = B39*C39*D39

**I need to write the code so the whole process is done fastest.The code may be long but the macro needs to run as fast as possible.

(Also, I remember using Screen.Updating = False when I wrote similar stuff many yrs ago. Would this be useful here?)

View 9 Replies View Related

Select The Top Right Cell In A Non-contiguous Range

May 29, 2009

Is it possible, through VBA, to select the top right cell in a non-contiguous range? For example, I have defined A1, A3, and A5 as a range. How could I tell Excel to select A5 from within that range?

I am using Excel 2007.

View 9 Replies View Related

Nth Lowest Number In Non-Contiguous Range

Aug 10, 2007

I want to use the Small function on a set of cells that are non-contiguous. But I know that the Small function only works on an array, which cannot contain cell references. Copying the cells to a contiguous range is not an option, as some of the cells I want referenced are generated on the fly in a Sumproduct function. Is there some alternative I could use? I can use the Min function to get the lowest value, as it allows for references, and the Max function to get the greatest, but what about those in between?

View 4 Replies View Related

Copy Non-Contiguous Range & Paste To Last Used Row

Aug 31, 2007

I am trying to have this loop go through colums of data and compare columns 3 and 4. Where there are differences, parts of the row are copied and pasted in a summary table.

My problem is the output to the summary table.

How do I control which cells in the row are copied? (I only want to copy columns 1, 3 & 4)
How do I control where the copied cells are pasted to?

Sub Change()
Dim r As Long

'Loop to Compare Values
For r = 4 To Cells(Rows.Count, 1).End(xlUp).Row
'Looks For Funds That Upgraded
If Cells(r, 4) < Cells(r, 3) Then
'Highlights the row
Cells(r, 1).Resize(1, 5).Interior.ColorIndex = 34
'Copies The Applicable Cell Over Into Column 7
Cells(Rows.Count, 7).End(xlUp).Offset(1) = Cells(r, 1)
'Places a note into column 5
Cells(r, 5) = "UPGRADE"
End If
If Cells(r, 4) > Cells(r, 3) Then
Cells(r, 1).Resize(1, 5).Interior.ColorIndex = 36
Cells(Rows.Count, 7).End(xlUp).Offset(1) = Cells(r, 1)
Cells(r, 5) = "DOWNGRADE"
End If
Next r
Columns("G:G").EntireColumn.AutoFit
End Sub

View 9 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved