I have a macro that was working fine until I added a new column to my active sheet. Now it fails with a run time error 1004, insert method of class failed. The code is as follows:
Private Sub UpdatePart_Click()
Dim S As String
Dim r As Excel. Range
Range("A2").Activate
S = InputBox("Enter the part no. you wish to update")
On Error Resume Next
If S = "" Then 'Exit Sub
'If StrPtr(S) = 0 Then
MsgBox "Update Cancelled"
Else
Set r = Columns(1). Find(What:=S, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)...............
I have a 2 groups of column headings with a different month and year in each heading so
1st Group of columns range Columns AJ through AX Column Heading example "Expense Ratio February 2013......next Column over is "Expense Ratio March 2013"
2nd Group of columns range AY though CE Column Heading example "Capital Balance February 2013......next Column over is "Capital Balance March 2013"
Each new month I need to add a new Expense Ratio column after the most recent expense ratio Column. (i.e. Find "Expense Ratio March 2013" and I need to add a column after that with heading "Expense Ratio April 2013"
Same thing for Capital Balance - add a new Capital Balance column after the most recent Capital Balance Column. (i.e. Find "Capital Balance March 2013" and I need to add a column after that for "Expense Ratio April 2013"
Because the ranges keep changing month over month, how do i do this.
I have a macro that searches a column for a date and then selects the appropriate date. The next step is to then copy the row and insert a new one below the copied one and paste only the formulas and none of the data. I have tried several iterations but all of the seem to paste the data too.
I have a workbook that usually looks something like this
Category Product No description Price
Balloons 12345 Red Disney balloon .50 Balloons 12567 Blue Princess balloon .86 Balloons 76521 Angry Birds Balloon .80
Kites 23456 A Big red Kite .27 Kites 22222 A small blue kite .06
Banners 10000 Party banner .33
etc..
I need to find a way to copy the category below an empty row from column A and paste it in the blank row in column B . If possible to bolden the text but I could probably work that bit out myself. I'm new to this but have used VBA before to run macros.
My worksheet has two sheets which has daily continued data. I want to copy two entire columns E and F from Sheet 1 and then in Sheet 2 I want to find a particular word "80 Percent" and then insert two new Entire columns before that word. And after that I want to paste that copied columns of sheet1 in those newly created columns of sheet 2. Is it really possible because the cell reference of the word "80 Percent" in Sheet 2 will change daily. How to create the macro codes for this.
I have a spreadsheet where I need to insert a column then a formula that performs a calculation on the previous column, all the ranges change; so far I ahve managed to insert the column to the right of the one I want to perform the calculation on and insert the formula in the first line, but i'm having a problem copying this dowm to the end of the data range.
I'd like to have done is to have a blank column inserted between columns W and X(these values change so the VBA statement should reference the end of the columns) and the values that are now in column Y(April 17th values) pasted as values into the now empty column X. I would like to do this for tabs Ann-Sheet 2. I'm having a bit of trouble with setting up the loop that would go through the desired sheets.
I have another little VBA macro problem that appears to be beyond my coding knowledge.
I have attached a small excel spreadsheet, with a macro recorded (CTRL-P) of what I'm trying to accomplish. Basically, If the data in column A matches a single entry in column F, I need to copy and insert the row (columns F-L) that matches.
I need to do something to my workbook, and I need to do this task:
When I insert/delete a column between E & F in sheet 1, the formula (not the value) in the column E was applied too to the new column I've inserted/deleted..
Then, when that happened to the sheet 1, It would happen too to the other sheet automatically..
So I don't need to insert/delete the row and copy the formula manually for each worksheet..
I know that I could simply solve it with grouping the sheet tab..
But I have plenty of data that needed to be inserted and applied with the formula..
I will attach the little example : insert.xlsx
And one more thing, I received this VB code from [URL] ..... for inserting the column:
VB: Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean) Dim lngRow As Long Dim ws As Worksheet If Target.Row = 1 Then Cancel = True
[Code] .....
And this code for deleting the column:
VB: Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean) Dim lngRow As Long Dim ws As Worksheet If Target.Row = 1 Then Cancel = True
I have 2 worksheets, "Data Dump" and "Target List"
I'm trying to cycle through the "Target List" in column "A", find the same value in column "B" in the "Data Dump" sheet. When I find it, I want to copy several other cells from the found row into cells on the "Target List" (though probably to a different column). Here is the code I'm trying to use. How to correct it to get the result I'm looking for.
I need to go down column C and find the word "Canada" and the find the word "Total", there are some blank spaces between, and select from "Canada" to "Total" in column C and the cells in the same rows from column C to column H.
So if Canada is in C15 and Total is in C29, select C15:H29.
I have the text value "Ball, Red" somewhere in column A. I don't know which row it's in because it will never be in the same row twice. I need a macro to find this value, then, copy that whole row and "insert copied cells" right below that row and change the value in the newly created cell from "Ball, Red" to "Red, Ball".
I tried macro recorder to do this and had no luck...
Cells.Find(what:="Ball, Red", After:=ActiveCell, LookIn:=xlFormulas, _ LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _ MatchCase:=False, SearchFormat:=False).Activate Range(Selection, Selection.End(xlToRight)).Select Range(Selection, Selection.End(xlToRight)).Select Selection.Copy Range("A21").Select Selection.Insert Shift:=xlDown Range(Selection, Selection.End(xlToLeft)).Select Range(Selection, Selection.End(xlToLeft)).Select Application.CutCopyMode = False ActiveCell.FormulaR1C1 = "Red, Ball" Range("A22").Select That's is all there is to it on this one.
way to search for a value in a cell (an unique one) using an input box and then if the value is found copying the whole row of the cell onto a new worksheet in the next available row within a table.
I am currently using the following archaic codes:
x$ = InputBox("Please Enter Catalogue Number")
For i = 4 To 500
If Sheet2.Cells(i, 1) = x$ Or Sheet2.Cells(i, 7) = x$ Or Sheet2.Cells(i, 8) = x$ Or Sheet2.Cells(i, 9) = x$ Then
this has the problem that i can't fit it to the next available row and have to be specific for each row.
it would also be great if i could put a messagebox in cases where the data is not found, basically saying that the item does not exist and if a simple excel Ctrl+F button or something similar could be attached to the msgbox so that the item can be searched and then added to the next available row.
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.
I have a spread sheet with bunch of rows and columns. Columns goes all the way from A ... BB and rows from 1 to 40,000
The main focus is column Y and AC
If there is a value of FALSE found in column Y then macro should go to previous row and copy the value that contains in column AC and then move down to the next row, , where the value FALSE was found and that's in column Y and paste that value in column AC the NUMERIC VALUE
I have created (pieced) together a macro to search through a list and paste the results in another worksheet it works fine but i can't get it to loop through the list.
Sub Findall() Dim y As Long Dim starta As String Dim tr As Long, tc As Long Dim sr As Long, sc As Long Dim s As Worksheet, t As Worksheet Dim SourceCell As Range 'Setup Application. ScreenUpdating = False Set t = Sheets("Target Sheet") Set s = Sheets("Search sheet") Set SourceCell = ActiveCell Do While IsEmpty(ActiveCell) = False Counter = 1 'Get last used row in Target Sheet t.Select..........................
see attached spreadsheet. In sheet 1 I would like to look up each word in column D, seeing if they are in column B at all. Note if the word "Jill" is in D and "jilly" in a surname in B I would like it to get picked up. I have highlighted manually those that would get picked up. Those that do get picked up I would like to be copied into column C as per sheet 2 (this is what I would like it to end up like). There is a very long winded way of doing this using a find function and 1 column per word but as the actual sheet i'm using has thousands of different words this isn't really viable!
1. Search a specific column (Column 21/U) for non-blank values in Worksheet 1 2. Copy the entire row containing the non-blank values 3. Paste these rows into Worksheet 2.
Repeat steps 1-3 an additional 2 times, where Worksheet 1 is always searched but one more column to the right (ex. Column 22/V) is the target column for the search, then the rows are pasted into the next Worksheet (for ex. Worksheet 3)
I have a worksheet where columns C, F, I, L, O record scores within a league. Each row records a persons score in that league and there are two rows per person recording their score and their handicap score. So Person A would be on rows 3, 4, Person B on 5, 6 etc. The persons name is recorded in Column B.
What I would like to do is to have a cell(s) elsewhere in the worksheet which show the highest score in that league and display that score and the name of the person who achieved it. This ideally would need to be done for the highest score and the highest handicap score.
For the life of me I can't even begin to work out how to do that or even know if it is possible in Excel.
So to clarify, lets say the highest score is in cell L7 and the highest handicap score was in M3. The cell(s) containing this formula should then show the name in B7 and the score in L7 and below it the name in B3 and the score in M3.
I've been trying to modify the following code to find the value "Module Index" in column A. I then need the code to save the row number that the value was found in and copy a range from ("A2:V row number")
I keep getting an "object required" error on the following code line
Set intFindrow = wbTargetBook.Sheets(strName).Range("A:A").Find(What:="Module Index", LookIn:=xlValues)
Essentially, I have 2 Sheets: "SheetWSS" = data to be copied "SheetWSD" = destination of copied data.
Below is a sample of the data in "SheetWSS" ----------A------------------------B-------------------------C 1------Trade ID -------Description---------System no. 2--------579----------------Loan ---------------------- 7 3--------580----------------Deposit---------------------22 4--------702----------------Deposit--------------------- 11 5--------703----------------Loan ----------------------- 58 6--------732 ---------------Loan------------------------66 7--------733----------------Deposit-------------------- 99 etc...(no more than 10000)
Now, an explanation of the data:
1) I work for a small bank (CORP) that takes deposits and gives loan.
2) CORP books these trades using only system no. 7 and 11; other system nos. belong to customers.
3) When a single trade is booked, the 2 sides of the transaction is recorded (by Trade IDs) . E.g rows 2 and 3 relates to one trade. So if CORP loans money with system no.7 to CUSTB, who uses system no.22, it shows for CORP a loan and for CUSTB, a deposit.
4) Everyday, the data in "SheetWSS" is updated with a different number of rows from previous, but the number of columns remain the same.
So, here's what i'ld like the macro to do: 1) Go into Column C, find system no.7 and 11. 2) For each 7 and 11 found, Copy the next row . So if for e.g, system no.11 was found in C4, i want the ENTIRE ROW 5 to be copied. 3) Paste the entire next row in "SheetWSD" until we have a list of all opposing sides of the same transactions initiated by CORP.
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!
I went through all the forums but confused a little. In the work sheet I want Excel to find an exact word such as letter "a" in all over the work sheet (not a column name) and paste it to the destination work sheet. I am attaching an example file, can some help me to solve the problem.
1. For a file moving from one cell to the next, down the column, get the values and seach for the values in file number two.
2. If that value is found, copy a cell from file 1 to a cell of a column on the same row where the value was found on.
3. Do what was done on number two, but with a different column.
this is what i have so far...
Sub replace() ' ' Macro2 created by david '
' for the entire sheet, moving from one cell to the next down the column, changing rows ' search for the contents in another sheet, and then if that is found, ' copy the row number to a variable, and then ' copy column K from sheet 1 to column N of sheet 2, using the same variable above ' after that same, but L goes to P. ' ' Windows("file1.xls").Activate Rng = Selection.Rows.Count Dim toFind As String ActiveCell.Offset(0, 0).Select Application. ScreenUpdating = False Dim i As Integer For i = 1 To Rng Windows("file1.xls").Activate toFind = Range("A + i") Windows("file2.xls").Activate
I have a master data sheet with four columns, A, B, C and D
Column A has the primary data and B,C,D has dependent data values;
So when I insert a new cell in Column A with cells Shift Down, I want mandatorily new cells to be inserted in the same row in col B, C and D as well so that data integrity is maintained;
I have a document which is full of HTML code. Please find attached. I have copied the information into an excel document and I need to find Twitter addresses i.e @test123 and place these in a separate column.
I am working with arrays that extend far beyond their actual content, and so i am looking for a way, through macros, to find the first blank cell in a column and then copy all preceding cells in that column.