Combined If & Offset & Copy Data
Apr 11, 2007
I need to create a macro wheather it be for each row or perhaps a dynamic macro that based on the active cell it can then offset based on my Expense type(Column B) into the respective row.
i had placed a sample of what i need to come up with highlighted in red. I need to copy the data in C7, C8, C9, etc... into D7:N7, D8:N8, etc... I have over 950 rows this code will need to be copied to. Columns do not move.
So if choose "fixed then i need for the macro to copy and paste data in each of those cells for Febuary to December. Should i choose "variable" then it places a "0" for Febuary to December and should I choose "NA" then nothing happens and i dont need code for that. It needs to be running constantly that way i dont need to run the macro so it needs to be in a module i beleive.
My problem is that i have three years of data and i have over 950 rows for expenses. THis is just a morsol. I cant place code in the cells as the expenses go there and it will just over write the code and is useless to me. That is why i need a macro that based on what i choose it then copies January's expense appropriately and for now it doesnt need to be dynamic but i prefer that it be based on the active cell if this is possible as i used over 950 option buttons and it worked but as the file gets bigger it crashes my computer.. 'Not enough Resources" .. gigs of ram and a 3.6 processor..
View 9 Replies
ADVERTISEMENT
Mar 17, 2014
My workbook stores data related to items that are all tracked by barcodes. Im using the following code (as part of a larger set of code) to copy data from rows 6 on in column D, E & G to K from one workbook to another. The data in F (Item Names) is found using a formula, by matching the barcode data in the corresponding G cell (on the same row) to another sheet (where the barcodes and Item names are stored). When the data has finished copying over and EnableEvents gets turned back on the F column mostly automatically fills itself in from the formula.
The issue I have however is in certain circumstances there are some items that either dont have a barcode, or the barcode is missing. In this case the user types "none" (not case sensitive), which opens a userform allowing the user to type in an Item name that gets entered into the F cell, overwriting the formula. I need to copy this data over separately to the new workbook. Im looking for code to find these records from row 6 on (either by searching for rows where G equals "none", or rows where F has no formula, and then copy the data in F over to the other workbook to the corresponding row number but offset by the number of records already present in the active workbook (currently being calculated by wbReturnDataLastRow).
[Code] .....
wb is the ActiveWorkbook that the data is being copied to
mybook is the workbook that the data is being copied from
View 6 Replies
View Related
Apr 20, 2012
How to correctly sort data when it contains both text and numbers.
This is what is currently happening
LA100LA102LA109LA11LA117LA118LA12LA120LA121LA199LA21LA216LA220LA221/SLA227LA229LA23LA230LAK102LAK107LAK11LAK117LAK120
BUT I NEED IT BE IN ORDER LIKE THIS -
LA11LA12LA21LA23LA100LA102LA109LA117LA118LA120LA121LA199LA216LA220LA221/SLA227LA229LA230LAK11LAK102LAK107LAK117LAK120
View 2 Replies
View Related
Aug 19, 2013
I receive a monthly spreadsheet from our trucking company which tracks the package and weight of that package. However I need to pull the weight out and run a report on total weight. However it is a mix of pounds and kilograms. Please see my example. What I want is a final column of all weight converted to kilograms. Note as well the spacing in the data as sometimes the "lbs" is right next to the number and other times there is a space between them.
Raw Data
package 1
10.2kgs
package 2
5 kgs
[Code] ........
View 3 Replies
View Related
Aug 21, 2014
Is there a simple way via VBA to alter the layout of data from a mixed up two column list into multiple headed lists on another worksheet (within the same workbook)?
The attachment should better demonstrate what I mean. Sheet1 has example data of how it is and Sheet2 shows how I would like it.
The data will be dynamic in the sense the numbers of unique values in column A will change (only increase, never decrease), as will the number of unique values in column B.
View 2 Replies
View Related
Feb 13, 2014
I have a report I am attempting to populate with data from a pivot table in another worksheet. Column A holds all the reference numbers (primary key), column B contains various start dates, and I want column C to contain all the payments made since the start date for each reference number.
The source data is a pivot table with Row = Reference number, column = transaction date, values = transaction amounts. This is an extremely large table, as I'm processing data from almost 1,200 cases, which each have around 20 payments spread over the last year, on completely random days. What I would like to do is build a formula in my report which looks up the records for the reference number from column A, and then adds up all the payments which have been made after the date in column B (and ignore any payments in the table which are before that date).
And to make things more complicated:
if an error is generated, it needs to return as 0, not #N/AThe report has the dates in UK format dd/mm/yyyy, but the pivot table has the dates in SQL format: yyyy-mm-ddThe pivot table is connected to a SQL database via ODBC and has to refresh every time it is opened.
=IF(ISERROR(VLOOKUP(A2,'Transactions'!$A$2:$B$1194,2,FALSE)),0,VLOOKUP(A2,'Transactions'!$A$2:$B$1194,2,FALSE))
View 5 Replies
View Related
Mar 10, 2009
I'm trying to copy a range, specified by an offset, then PasteSpecial that range to yet another location specified by an offset.
This is the code I have so far, which does not attempt to find the range to copy via an offset.
View 5 Replies
View Related
Jun 22, 2006
Following Dave's rule regarding using the rows in Excel rather than the columns I am trying to re organise some workbooks that have been passed to me. To copy one column of information requires 4 pages of code the first section of which is below.
Sub Copy1()
Sheets("INPUT_SHEET2").Select
Range("F4").Select
Selection.Copy
Sheets("INPUT1").Select
Range("C6").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
End Sub
Now that I have the code to copy one column I want to be able to adapt it to move four columns to the right from F to J and using the example above copy from J4 to C166. I am guessing that Offset is the way to do this but can't seem to work out how. ach block of data takes up 160 rows and the data is all pasted into column C. The data to be pasted starts in row F then J then N and so on up to column IZ in some of the workbooks I am trying to revamp.
View 5 Replies
View Related
Oct 23, 2011
Copying the target cell to target.offset(0,-3)
View 5 Replies
View Related
Jun 25, 2006
I created macro that copies cells from one worksheet to another using the copy/paste function. Unfortunately it runs rather slow. Instead of copy and paste I want to use something like this:
ActiveCell.Offset(0,1)= Sheets("Raw Data").ActiveCell.Offset(2, 3)
Can this be done and what is the proper syntax?
View 6 Replies
View Related
Jul 19, 2006
Can i convert this
ActiveCell. Offset(-1, 0).Copy
With ActiveCell
.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
.ClearOutline
End With
So that i can copy/paste the Offset range such as (-1,-2) (-1,1)?
View 4 Replies
View Related
Aug 2, 2006
I am trying to locate specific values in column a of a spreadsheet and I want to be able to move (cut and paste, offset, ???) only those values to column c of the same row. The values I am looking for are text and they all begin <@29>, <@33>, etc. (pagemaker codes). I want to move the cells with the pagemaker codes to column c. and leave the other ones in column a. Does anybody know how to do this using vba? Below is a sample of my column a.
16D
16D
16D
16D
16D
16D
16D
16D
16D
16D.........
View 3 Replies
View Related
Apr 26, 2007
This is the current code I am using, it works but from another post it looks like it could be cleaned up.
With Sheets("Web Data")
.Activate
Range(.Range("A6")).Offset(2, 1).Resize(2, 24).Copy
Sheets("MW Forecast Calculation").Select
Range("C9").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
This is the code I am trying to get to work but I am having trouble with the red text.
Set CopyRange = Sheets("Web Data") Range(.Range("A6")).Offset(2, 1).Resize(2, 24).Copy
Set PasteRange = Sheets("MW Forecast Calculation")
Cells ("C9:Z10")
CopyRange.Copy PasteRange.Values
View 5 Replies
View Related
Jul 7, 2007
My source data generates a sheet full of individual dates and condo rates. We'll call it the "Rates Tab". The dates are not sorted or organized into a single column and to complicate it further the data has blank rows periodically. The only recognizable pattern is: (example) the date is in cell b12, then the condo rate will be 2 columns to the right in d12. On a separate sheet, the user will input a check in date(date A) and check out date(date b). I need to find the rates for all dates from Date A to Date B located on the Rates Tab. how to find a Date across various columns and then return a value 2 columns to the right from the "target"?
View 6 Replies
View Related
Oct 10, 2007
As seen in the attached spreadsheet on sheet1 the template is 6 columns and 5 rows. The colors correspond to the information needed on sheet 2. this template includes data from row 3 on sheet 2. I need a macro that will copy this template and return the next row of data from sheet2. this has me stumped. Also the data changes on sheet, so it may have many rows or just a couple.
View 7 Replies
View Related
Jan 21, 2009
I would appreciate some ones help to correct a macro I'm trying to write. The macro copies 3 columns from Sheet1 to Sheet2 in a selected location. The 3rd column copied needs to be pasted in a different column in Sheet2.
View 6 Replies
View Related
May 21, 2009
I am attempting to do is have a macro (Via Command button) go through column A to find the word "TOTAL". Once that is found I want it to offset by 3 rows (from the word "TOTAL") to grab the number and place it into column B.
View 2 Replies
View Related
Aug 23, 2012
I am trying to achieve something like this :
Find a specific text in my column B (example : "Proposal ID"), when "Proposal ID" is found, select this cell and offset to the column C (Offset(0, 1)). Then copy this cell value in another sheet.
This will be repeated with different texts (always in the column B), so if the text is not found, I need the macro to continue running.
View 5 Replies
View Related
Nov 27, 2012
using VBA and most of what i know has come from reading through blogs. I'm trying to copy 5 separate pieces of data from one row on our Payroll sheet and paste this in to another sheet call master dump.
The issue that i am having is that the code i have written keeps coming up with a run time error 1004 at the line "a.Select"
What i need the code to do is this: Copy the data from cell A4 and paste this on to another worksheet in to row cell b2, date worked in to d2, pay code in ot f2, hours in to h2 and the cost centre in to ad. all on the same row. i then need it to move on to the next team member (in this case A5) and repeat until there is no emp#. once the monday is done it will need to move onto Tuesday.
Code below.
Sub payroll_data()
'
' Payroll_data_MON Macro
Dim a As Range, b As Range, c As Range, d As Range, e As Range, i As Range, j As Range, k As Range, l As Range, m As Range
Set a = Range("A4")
Set b = Range("I4")
Set c = Range("G4")
Set d = Range("H4")
[code]....
View 9 Replies
View Related
Mar 5, 2010
I have a spreadsheet with 2 worksheets. I have a variable cell and a display cell on Worksheet A and two other cells with information on Worksheet B that I need copied over to Worksheet A based on what is entered for the variable on Worksheet A.
I want to be able to enter a variable in Worksheet A, cell B25. I then want the code to look up the variable I just entered at B25 on Worksheet B, column A. Once the code finds the variable, then I want the code to copy what is in column B and enter it into Worksheet A cell C25.
In other terms, I want to enter "Bob" in Worsheet A, B25. On Worksheet B, I have 50 different names of people in column A and additional info directly to the right of their names in column B. When I enter "Bob", I want the code to find "Bob" on the Worksheet B and enter "is worthless" on Worksheet A, cell C25.
I have tried and got the code to work with several If/then statements and I accomplished the same using a select case arguement as well using something along the lines of "if B25="Bob" then C25=worksheet B("B2")" assuming Bob is in cell A2. My concern is the info on Worksheet B is fluid. I need to be able to sort and add additional lines at any given time. My data set is going to be between 500 and 800 rows. Any time I add a row and re-sort the data set, I want the code to find "Bob" in column A and then display what is in column B in Worksheet A, C25. I can continue to use the if/then statements, but they are static and if I add a new row near the top, I would have to re-number all the if/then statments in the code.
View 9 Replies
View Related
Dec 1, 2006
My code (with help from this forum) loops through all workbooks, all sheets and all columns OK as I have tested it with message boxes
I need to take the value of Range("C5") from each column of all sheets of all workbooks
and paste it to Range("A4") downwards in Workbook("Loop Folder.xls") . That is, each new value is inserted in the next row of column A.
Sub test4() ' populate analysis sheet
' copies cell("C5") from each column in each sheet in each workbook in a directory
Dim Mypath As Variant
Dim excelfile As Variant
Mypath = "U:September 2006" ' folder where all excel files reside
excelfile = Dir(Mypath & "*.xls")
Application.DisplayAlerts = False
Do While excelfile <> "" ' loop all files
View 7 Replies
View Related
Jan 29, 2014
I have a NAMED RANGE of data consisting of 4 columns and as many rows as is selected. Name it CompTable1.
I loop through all of the 4 columns of data to format it (as shown below). This snippet is for column 1 of CompTable1 (a public variable as string) and I basically have the same situation for each column of 4 but replacing each respective x in cells.(n,X) & offset(0,-x) to take into account of where I wish the data to go as I loop through. Ultimately 4 (For Next) loops.
[Code] ......
The new range with 5 columns is as follows:
Column 1 from CompTable1 = Column 1 of new range
Column 2 of new range is blank for something later
Column 2 from CompTable1 = Column 3 of new range
Column 3 from CompTable1 = Column 4 of new range
Column 4 from CompTable1 is not used in the new range but is formatted
Column 5 of new range is blank for something later
This certainly works very well and with my amateur VBA status am quite proud of how far I have come in a few months. Is it efficient? Is it free of possible errors? Likely not. I wish to rid myself of the "Select" each cell plaque though maybe using a resize, offset or copy destination operation but can't seem to get it working. Once I do get the data in the new range, I format everything without selecting quite well with my methods described above.
View 1 Replies
View Related
Feb 1, 2009
I have a data sheet with employee information. Only one column. It prefixes information with codes, but keeps it in the same cell. I want to move data of certain types into their own columns, but the amount of data is variable, so I cannot simply move every Nth cell, etc.
i.e.
Employee#1
200 Firstname Lastname
204 99999999 (Employee ID)
G38 00005000 (i.e. Pension Deduction)
H38 00007580 (i.e. Benefits Deduction)
X96 00012099 (i.e. Staff Club Deduction)
Employee#2
200 Firstname Lastname
204 99999998
G38 00000775
X96 00001000
So you see some employees may have different codes altogether. But I know that I want all the cells that start with 200 to be offset (-1,1), and all the cells that start with 204 to be offset (-1,2), and so on so that basically I end up with columns of info instead of a one column list.
I have been reading and studying other peoples' macros, and am just starting to grasp the basic. When I wrote my own to accomplish this, I put this together, which doesn't work. But I don't know enough to know what I don't know.
View 7 Replies
View Related
May 13, 2009
I am in the process of writing a VBA code(I should I am fairly new to this code writing!!!).What I need to be able to do is below.(enclosed please find a output in an xls file) What I should be able to do is below:
1.Find the text "Cash(No Listing)(Monthly)"
2. Offset to the 13th Column after that
3.Select the value in this column ,copy the value
4.Go to a row above and move one column to the left i.e.offset (-1,-1) and move 12 column backwards i.e.offset(0,-12)
5.Copy the value in 3 above to this entire range
6.Repeat this process for the entire file
My code is as below.Let me know where am I making a mistake. Just to let you know that this code performs the job well for the first entry i.e in the yellow makde area and doesn't do the job for any further entries .Llooks like I have some problem with the loop but not sure as to whats happening!
View 3 Replies
View Related
Oct 31, 2009
I am writing a program which would look for look for the word " TOTAL" in sheet1 and then assign several values in sheet 2 based on cells offset of address of "TOTAL". This is repeated and down rows of sheet 2. Everything works except that it is giving repeating the first "TOTAL" address; i.e. it doesn't seem to go to the next met criterion.
Sheets("Summary").Range("A1").FormulaR1C1 = "=COUNTIF(Sheet1!C,""TOTAL"")" ....
View 7 Replies
View Related
Oct 16, 2006
Sub TestSearch()
Dim FoundCell As Range
Dim SearchString As Variant
'Specify Value to Search
SearchString = " Excel"
'Perform the Search and Return a Cell Value
Set FoundCell = Worksheets("Source").Range("A1:A10000").Find(" Excel", lookat:=xlPart)
If Not FoundCell Is Nothing Then
MsgBox "Found at " & FoundCell.Address
End If
End Sub
I'd like to take the code above, which returns a cell address which contains the text " Excel" and modify or add to it the capability to copy a range starting from the address returned and ending 102 cells further down in Column A on the Source sheet to A1 of the Sheet1 sheet. The crux of the problem seems to be converting the address to a row number then adding the value of the number of cells in the range to find the end row number then converting that back to an address??
View 5 Replies
View Related
Feb 13, 2014
I want to do the following:
If cells in column B from Sheet 1 contains ''text'',
Copy Cells from column D and F from Sheet 1 - TO - Sheet 2 in columns C and E -
View 1 Replies
View Related
Dec 5, 2011
I'm using a code to search some information in a pivot table and copy the value in the cells with offset(0,1) and is very very slow, I tryed another method with the using of Find but isn't working: error message: missing object in the with cycle.
Here is the working code:
Dim DataFine, DataInizio, UltimaRiga, Gg As Date
Dim NomeMacchina, Plant As String
Dim Cl As Object
Dim Pr As String
Application.ScreenUpdating = False
[Code] .......
Here is the code who doesn't work
For i = 6 To 500
Giorno = Sheets("OEE03").Cells(i, 2)
With Sheets("01")
Pr = Range("A5:A500").Find(Giorno).Offset(0, 1).Value
Sheets("OEE03").Cells(i, 9).Value = Pr
End With
Next
if I use this code on a normal sheet it works but when I try to use it on a Pivot table fields give me always the error message.
View 5 Replies
View Related
May 23, 2012
What can I add to the macro I already have in place (below) to accomplish what I'm looking for (2 parts)? ...
1) I need to copy everything (formulas) that is in C7:F7 and paste it down to all "active" rows - I'm defining an active row by any row where column A is not blank.
2) I need to copy everything (formulas) that is in Q7:AF7 and paste it down to all "active" rows - I'm defining an active row by any row where column P is not blank. (You'll notice by the screenshot that there will be blank cells in column P mixed in with non-blank cells.)
Code:
Sub AdminTool()
'
' CreateAdminTool Macro
'
'
ActiveWindow.Zoom = 90
Rows("1:1").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
[Code] ...........
View 7 Replies
View Related
May 31, 2014
I am having some difficulties using a combination of IF and the OFFSET function to display a range of cell values from another column based on a simple condition. The values I need to display at the destination cells should be offset by 8 columns to the right and "X" rows down from the reference column. The value "X" is to be determined via the IF function to check for the row index number.
For example, if Index value "X" = 8, then display the value of B2 in cell I9. IF X = "9", display B2 in cell I10 etc.
I have attached a sample worksheet that provides some examples.
View 3 Replies
View Related