VBA - Additional Loop To Copy Range To Different Worksheet
Mar 14, 2014
I'm attempting to create a worksheet to consolidate his financial data.
How to add the last loop or where to place it.
I can copy the values from the P&L sheet to the DATA sheet but I cannot discover a way to also pull the values from the BalSht sheet to the Data sheet.
I think the BalSht loop will be almost identical to the "P&L sheet loop, and be placed just below it - but I'm not successful in multiple attempts and days of trying.
How can I accomplish this? Here's the VBA code:
[Code] .....
View 3 Replies
ADVERTISEMENT
Mar 15, 2014
Creating a worksheet to consolidate his financial data. I've been able to muck my way through most of the VBA code by looking at examples on the forum. However, I cannot figure out how to add the last loop or where to place it. I can copy the values from the P&L sheet to the DATA sheet but I cannot discover a way to also pull the values from the BalSht sheet to the Data sheet. I think the BalSht loop will be almost identical to the "P&L sheet loop, and be placed just below it - but I'm not successful in multiple attempts and days of trying. How can I accomplish this?
Here's the VBA code:
VB:
Sub NewISCopy()
On Error Goto errorHandler
'*************************************************************
Dim CopyCol As String
Dim PasteCol As String
CopyCol = "G"
[Code]...
Excel file attached.
FI-LOOP-5.xlsm
View 7 Replies
View Related
Jan 31, 2014
I need to loop through worksheets in a workbook and copy every first cell value(A1) and then paste into a new worksheet.
I have tried various loops. some have copied first value for the first sheet and then pasted in the new sheet. while others have been not so good.
This is the code I have so far and this does not work at all.
Code:
Sub Check()
Dim ws As Worksheet
Dim lr As Long
Dim treg As Worksheet
[Code]......
View 1 Replies
View Related
Jan 29, 2014
I am using a spreadsheet as a score sheet for a competition. One of the columns is the student's GPA. After entering all the scores there are duplicate final scores. I need a way to have it look at the final score and then use the GPA so that it will not put a duplicate value in the final column.
al Column N is the Total Column, Column O has the Names that correspond to the Total Column. Currently I am taking this total and putting it into Column Q (High Scores) in high to low order. Column R should have the names that match the scores. But with duplicate scores, it is only putting the first name associated with the score. I would like to use the GPA as a final determining factor for the duplicate scores. The higher GPA would come before a lower GPA. I have tried to put an additional column to bring the GPA over to correspond with the High Scores Column, but could not get it to work.There are actually more names for the competition and the top 10 will be moved to a different sheet and further judged. I have attached a sample with the exact formulas that I am using.
View 1 Replies
View Related
Jun 25, 2014
I do have macro which populates sheets based on given list.
I want to paste all data in newly created sheets from "Template".
I do not want to loop 2 sheets ("DATA" & "Template").
Data must be pasted with format & validation. Validation exists on Template sheet only. No other sheet is referred for validation.
View 2 Replies
View Related
Feb 15, 2007
Finding the value "OK" in a range of data in Worksheet(1) out of Range("Product"). Ones the value "OK" is found, the entire row is cut and then pasted into a new worksheet 'Range("A3")'. Then the loop sets in and finds the next value "OK" in the range untill it reaches the end of the predetermined Range("Product").
The only problem I have is that the code I have written already performs the process, but when pasting the data into the new worksheet, paste's all of the found rows into the same row. So what you are left with in the new pasting sheet (Worksheet2), is only the last found row because it keeps overiding previously found data. What I need the Macro to do is find the next availible blank row in Worksheet2 and for all values cut out of Worksheet1. Now there was a simular posting to this on the forum, but when I tried it in my code it would not work...
Sub FindAndPaste1()
With Worksheets(1).Range("Product")
Set c = .Find("OK", LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
c.EntireRow.Cut Destination:=Worksheets("Sheet2").Range("A3")
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
End Sub
I also attach the Excel spreadsheet called Product Macro.xls
View 4 Replies
View Related
Nov 17, 2006
I created an array from data on one sheet...then when using the array (in a loop) on a different active sheet, half the values in the array are lost. However, if I run the code and keep the focus on the sheet with the array data, it works. I can't understand why.
I'll include my code.
aDepartments = Worksheets("sheet1"). Range("A5", Range("B5").End(xlDown).Address)
For Each iZ In aDepartments
MsgBox iZ
Next iZ
If i run this while sheet1 is the active sheet, it works fine - all 15 values (15 in each dimension) are there. If I click on any other sheet and then run the code, only 7 values are in the array (7 in each dimension).
View 4 Replies
View Related
Jun 18, 2008
The code is as follows:
Sub addtaskpc()
ActiveSheet.unprotect
Application.DisplayAlerts = False
myrow = Cells. Find(" Total P&C Estimate").Row - 3
mycell = Cells(myrow, 2)
mynum = Right(mycell, Len(mycell) - InStr(mycell, "#")) + 1
With Range(Cells(myrow, 2), Cells(myrow + 2, 2))
.EntireRow.Copy
.EntireRow.Insert Shift:=xlDown
End With
Application.CutCopyMode = False
Cells(myrow + 3, 2) = "Task#" & mynum
Application.DisplayAlerts = True
ActiveSheet.protect
End Sub
View 9 Replies
View Related
Sep 5, 2006
I have an excel sheet being used as a mini database table.Rows = records, columns = fields. I have some VBA to create a copy of base template in the workbook, then populate the new template with the data from a row/record in the db. I currently have about 100 records. After about the 57th record I recieve RT error 1004. "Copy method of worksheet class failed". I think this is becuase excel is running out of memory. My laptop has 1gig of ram, and i have closed all other apps when running the macro.
Is there a way to free up memory while the vba is running, without clearing my "for" or count position which tells the macro to create a new sheet and which row/record in the db to populate the data in the new sheet.
View 5 Replies
View Related
Apr 19, 2012
What I'm trying to do is open a closed workbook from an active one, then go through a range looking for cells that has a different value than "noone", and copy the rows that does have something else than "noone" into the first worksheet.
What I've got so far is:
Code:
Private Sub CmdHent_Click()
Dim vikar As Range
vikar = Range(I12, I42)
Application.Workbooks.Open Filename:="C:Documents and SettingsoybMine dokumenterook1.xlsm"
Windows("book1.xlsm").Activate
Sheets("Sheet1").Select
View 9 Replies
View Related
Jan 2, 2007
I'm trying to find a certain word in a range in a sheet and then copy all the data from the same row into another sheet. It needs to loop so that all occurrences of the word are found and the data copied. Below is the code i have tried to use. It doesn't fall over but it doesn't work either!
Private Sub CommandButton1_Click()
Dim Class As Range
Dim Cell As Range
On Error Resume Next VBA:
Set Class = Selection.SpecialCells(xlConstants, xlTextValues)
For Each Cell In Class
If Cell.Value = "Math" Then
Cell.EntireRow.Copy '1
Sheets("Sheet 3").Range("B2").PasteSpecial '2
Application.CutCopyMode = False......................
View 2 Replies
View Related
Nov 21, 2013
I have the following code that rearranges the data based on the values in the first column (cannot post attachments). Currently, the code is grabbing the whole columns when performing cut and paste and with larger sets of data I am getting "Excel cannot complete this task with available resources" error. Need to modifying the code so it only grabs the used range as opposed to the whole columns.
Code:
Sub ArrangingColumnsByNumber()
Dim Count As Long
Dim CurrentNumber As Long
Dim CurrentColumn As Long
Count = 1
CurrentColumn = 1
CurrentNumber = Cells(Count, CurrentColumn)
[code].....
View 4 Replies
View Related
Jul 27, 2012
Here is my situation:
Background:
- Excel VBA 2007
- I have a macro that inserts a set of vlookups in range D3:D8.
- When D3:D8 has been filled, I need the macro to COPY the Vlookups in D3:D8, skip down one cell, and paste in the next set of open spaces.
- I have a Do statement that isn't working, and and IF...THEN that quits the loop when a blank cell is found (This means the range of vlookups is no longer needed).
Objectives:
- Fix Do...Loop so it copies D3 throuh D8, skips a cell below D8, and Pastes in the next section? - There will sometimes be only one section to paste in, and sometimes 20. It is dynamic.
Code:
Sub InsertVLookup2()
' This macro inserts the VLookup into cell B2
Dim lastcolumn As Long
Range("D3").Formula = "=VLOOKUP($A2,INDIRECT(""'"" & B$1 & ""'!A:I""),9,FALSE)"
Range("D3").Select
[Code] .......
View 1 Replies
View Related
Sep 30, 2013
I have a rand () which provides me a different number upon calculate. I would like to run a loop for 1000 times and take the value and copy and paste in a range.
The below sorta works, but at times it stops or doesn't work at all. I have a loop for the counter and the for each to place the value into the cell and have it run over and over and placing the value in the next cell underneath. I have the counter at 10 so I dont get stuck in some endless loop before I know it works.
Code:
Sub montecarlos()
Dim MCs As Long
Dim c As Range
Dim lCount As Long
Dim lNum As Long
lCount = 0
lNum = 1
Worksheets("MonteCarlo").Activate
[code].....
View 6 Replies
View Related
May 8, 2006
I've set a range as DD14 to G014, then using a For Next Loop asked the program to cycle through each cell in the range. Upon findng a populated cell, it stores several bits of data from that cell (already done) and then move up one cell to record the cell value (time) and again move one cell up to record the date.
Now I did get this to work using a clunky bit of code that used activecell.offset to move the focus up the two columns and a While .... Wend loop - but using a set range and cycling through each cell it does not appear to be possible - or am I wrong?
Set MyRange(1) = Range("D14:ER14")
Set MyRange(2) = Range("D23:GN23")
For MyCounter = 1 To 2
For Each Cell In MyRange(MyCounter)
If Cell.Value = "" Then Goto Skip_Cell
MyCell = Cell.Address
MyPosition = InStr(1, Cell.Value, ",")
If MyPosition = 0 And Len(Cell.Value) >= 3 Then
Tool_Number = Left(Cell.Value, 3).....................
View 2 Replies
View Related
Jun 9, 2014
I have 400 source files containing (among others) 8 sheets with daily results: "Fri 23", "Mon 26", "Tue 27", "Wed 28", "Thu 29", "Fri 30", "Sat 31 (if applicable)", "Mon 2".
Each sheet contains also:
State - D1
Role - D2
Staff ID - D3
Date - D4
Activity group name in column A (starting from row 8)
Activity type in column B (merged with C and D) (starting from row 8)
Activity time in columns E:GV (starting from row 8). Usually, there is none or only one value in whole range (e.g. E8:GV8). But sometimes there are two values.
Customer ID in row 6 (value appears only if time was reported in E:GV range)
CC Number in row 7 (value appears only if time was reported in E:GV range)
It's all about transferring values from all daily sheets in all files (.xls) sitting in folder C:WADFinal to one simple table (WAD_Consolidation_file.xls, sheet "Consolidated") consisted of 9 columns: Staff ID, Role, State, Date, Activity Group, Activity Type, Minutes, Customer ID, CC Number.
Additional note if two values exist in the same row they should be copied as two separate entries to consolidation file.
View 9 Replies
View Related
Mar 25, 2014
I have been trying to determine the maximum/minimum value and additional count from a variable range which then I can use to subtract the first data of the range; I have been able to do that for a fixed range but not a variable one.
I have Column A with random positive numbers.
I have Column B with random negative numbers.
I have Column C with random numbers.
I have Column D with random numbers.
I have Column E with random 0’s and 1’s.
I have a set of 1600 cells of numerical data on each of the columns and there will be times when the random 0’s and 1’s from Column D will have appear repeatedly before changing to the opposite number, fx, I will get 7 nr. 1s before I get a 0 (zero).
I have been able to obtain the values in 2 cells within a fixed range:
If the last 8 cells in Column D have been “1” then I do:
F1=MAX(A1:A8)
G1=INDEX(C1:C8;MATCH(9.99999999999999E+307;C1:C8)) ---(Which provides the first number of the range in Column C after Column D has changed from 0 in D9 to 1 in D8)
H1=(F1-G1)
If the next 3 cells in Column D have been “0” then I do:
F9=MIN(B9:B11)
G9=INDEX(C9:C11;MATCH(9.99999999999999E+307;C9:C11)) ---(Which provides the first number of this range after Column D has changed from 1 in D12 to 0 in D11)
H9=(G1-F1)
Additional to this, the COUNT has also been challenging since I want to obtain in Column I, the COUNT of repeated 1’s from each range of 1’s in Column D; and also in Column J the same but for 0’s.
Fx:I18 (size of the range of 1’s originated from D1:D8)
J93 (size of the range of 0’s which consist to be the next range before 1’s were originated)
I12X (size of the range of 1’s which consist to be the next range before changed to 0’s)
However, that only works for a fixed range and continuous updates are made.
Book1.xlsx
View 2 Replies
View Related
Feb 7, 2008
I have some numbers in a column that I need to copy 12 times (each one) into another column. The problem is that I got like 200 records that will be converted in 15000 aprox. I've uploaded an example of what I need,
View 3 Replies
View Related
Jun 2, 2014
Ok then, I can do this with record macro and it works ok, but im sure theres a nice way to get VBA to do this quicker and make it work for every row.
Story is - I have a spreadhset - which will have data in rows as normal. Each row when completed will have a button which when clicked - creates a new worksheet by copying one already there, then populates this new worksheet with the data from the first worksheet.
Dont ask why I am not allowed to use MS Access for this as its a bit of a long story.
This is what the record macro VBA shows - this works ok as I said but obviously takes a good few seconds and jumps around etc until its competed.
Code:
Sub create()
'
' create Macro
[Code]...
View 4 Replies
View Related
Sep 30, 2007
The purpose of my following code is as below:
1. Add new worksheet (say ws2)
2. Activate the worksheet ws2
3. Copy a predefined range from already open workbook (say ws1)
4. Select the target cell in ws2 through user prompt by using mouse or keyboard
5. Paste the copied range from ws1 at this location of ws2
I am facing problem in selecting the cell in ws2 as ws1 always remain in foreground.
Sub CreateNewWorkBook(RValue As String)
Dim wbA As Workbook
Dim wbB As Workbook
Dim sTemp As String
Dim rRange As Range
Set wbA = ThisWorkbook
wsName = ActiveSheet.Name
Set wbB = Workbooks.Add
WorkBookName1 = wbA.Name
WorkBookName2 = wbB.Name......................
View 5 Replies
View Related
Sep 8, 2013
I would like a Macro that can copy values from 5 rows in a worksheet, starting from Row 1. Each "Batch" copied to a new worksheet should contain values from 5 rows, so first batch would be from Row 1 - Row 5 → copied to Sheet 1 , then Row 6 - Row 10 → copied to Sheet 2 , then Row 11 - Row 15 → copied to Sheet 3 ...... etc. This should be done until there are no values in the last row.
So, the workbook would start off with only one worksheet, which could be named "source" for convenience and end up with many more sheets depending on how many rows are in the source worksheet, which can vary from time to time. There are 3 other "contraints/conditions that need to be considered 1. the number of columns in the "source worksheet may vary from 5 columns up to 30 columns. 2. The formatting that was applied to the values in the "source" worksheet need to be maintained. 3. The data posted should start in cell A1 for each new sheet.
View 2 Replies
View Related
May 13, 2014
I have two worksheets. both are almost identical although one has the colour red background on certain cells in the range.
How do i copy only the colours to the range on the other worksheet only?
Both ranges are identical and dynamic in size. The structure of both spreadsheets are identical.
View 3 Replies
View Related
Oct 9, 2008
I am trying to find a code that will copy a Range (MasterMinutes) from one Worksheet and then paste it on another worksheet titled "Master"
After it has been pasted I need to select the used area (EXCEPT for the first row) on the Master and Sort it by Columns B C and D (all ascending)
View 9 Replies
View Related
Jul 7, 2006
I have a workbook with lets say 10 sheets. 9 of the 10 sheets are identical as far as layout, they just hold different information for different employees. I need to get a range of cells that are NOT empty and copy that data to the 1 different sheet (summary page). A6 through A25 is where the data is going to be, but all those cells may not be filled up, so I want to drop the empty cells from the range. So If only A6-A15 are filled, then those are the only ones that get copied.
ALSO (dont you love that) I need to take that number range and have columns A, F and I as well. So if I have A6-A15, I will need the data out of F6-F15 as well.
View 4 Replies
View Related
Apr 12, 2007
I had originally posted this question on another thread since the problem i've been trying to solve is quite similar to the discussion on that thread.
I have a workbook with only one worksheet. This worksheet contains data in only the first column. However this data can be either tab or space delimited. The first few rows are junk data which i am not concerned with. I have a header and footer row and the useful cells are in between these.
What I am trying to solve is this:
1) Add a new worksheet, rename it to "COPY" and place it after the original sheet. This I have been able to achieve using the code below.
Dim PageSheet, CopySheet As Worksheet
Set PageSheet = ActiveSheet
PageSheet.Activate
Sheets.Add
Set CopySheet = ActiveSheet
CopySheet.Name = "COPY"
CopySheet.Select
CopySheet.Move After:=PageSheet ...............
View 9 Replies
View Related
Sep 5, 2013
Copy Ranges From all Sheets.xlsx
I need a macro that will copy a range of cells, it is always in the B2:B7 range from all the worksheets in a workbook. This is just a sample of the actual workbook, which has 100's of worksheets. The macro also needs to maintain any formatting [conditional or regular].that has been added to a particular cell. The ranges need to be pasted in a worksheet named "content" and arranged in columnar sequence, please see attached sample.
View 3 Replies
View Related
Jan 9, 2014
Copy and paste each cell below when M is true or greater then 0 to a new worksheet called Price Summary. If cell is false or 0, do not copy. I would like the text in N to paste to the first available row in A and copy M as well to the corresponding B. I only need the values of these cells to copy and not the formulas. Been trying to get this to work for a while with no luck.
Excel 2007MN17$018$01920$021$022$023$024$025$026$027$028$029$030$031$032$033$034$0250# Vessel Pricing TESTWorksheet FormulasCellFormulaM17=IF(L17=TRUE,INDEX(_250lb12inlegs,B2),"$0")N17=IF(L17,"12 in.
[Code].....
View 3 Replies
View Related
May 2, 2006
I wish to compare each item (4-8 digit alphanumeric ID) in a list in column B of worksheet 1 (Portfolio) to all of the items in column B of worksheet 3 (EssBase Cap). The data (ID) in column B of 'EssBase Cap'! is concatenated with its description so my code needs to strip off the leading zeros and everything after "-" in order to do the comparison. Once a match is found it should copy the corresponding values in 'EssBase Cap'! for that row, column D and E to 'Portfolio' Column J, and K. I have created some pseudo code and need to translate this to Excel VBA
Dim IBSPWD As String
Dim ProjectPCN As String
Dim Pos As Integer
Dim I As Integer
Dim J As Integer
For I = 3 To 'to end of range ? WHat is the code to find end of the range IE no more data?
For J = 6 'to end of range ? The nested for loop will check each item in Portfollio and compare it to each item in Essbase Cap
IBSPWD = 'EssBase Cap'!Cell(J,"B") 'fill in the string with data
Pos = InStr(1, IBSPWD, "-", vbTextCompare) 'find length of the string befor "-"...............................
View 3 Replies
View Related
Mar 23, 2007
How can I copy the Named Range definitions from one worksheet to another in the same workbook? In case it matters, the Named Ranges refer to cells in a third worksheet in the same workbook.
View 6 Replies
View Related
Oct 22, 2007
I have a workbook with data in it that I want to copy and put in another wookbook. The data looks like this.
D11/22'2005
CX
T-7.80
PEl Azabache
LDining Out
(blank cell)
D11/22'2005
CX
T-9.50
PAce Hardware
LHousehold
(blank cell)
What I want is a macro to copy that data until it finds a blank cell and paste/transpose that data in another workbook and then get the next set of data until an other blank cell.
It should look like this when done.
D11/22'2005CXT-7.80PEl AzabacheLDining Out
D11/22'2005CXT-9.50PAce HardwareLHousehold
View 7 Replies
View Related