For Each Loop In A Range
Jan 12, 2014
I have a range of letter values. The values vary between A, a, and B. I have a "For Each" loop that doesn't do what I'd like. The way it's written, I'd think it'd delete every column that doesn't contain the letter "A".
Code:
For Each k In rngMyRange
If k.Value "A" Then
k.EntireColumn.Delete
End If
Next k
It seems to miss entire columns. Do I need to initialize k?
View 8 Replies
ADVERTISEMENT
Jun 21, 2012
Code:
For lead = 1 To 20
CurrentFile = ActiveCell
Workbooks.Open Filename:=CurrentFile
ActiveWindow.Caption = "Graboid"
I have a file I use to grab information off a website I subscribe to.
I get daily emails containing a list, then I use that list to extract additional information for each item in the list.
View 8 Replies
View Related
Jan 12, 2013
I am trying to do Loop through Range I have workbook and it has two sheet (sheet1 and sheet2) sheets ("Sheet1").range(A1:K30") hold the Doc_ID (E.g. 78002)
What I want to do........if Range(A1:K30) = Inputbox("Enter Your Doc_Id Number") Then Copy that Cell Only and paste it to in Sheets("Sheet2") -Column A
View 6 Replies
View Related
Nov 2, 2007
I have percentages in each row. Let's say from A4 to Z4. Each cell can be 20% at maximum In Visual Basic I want to write a macro that sums the cells up. So when the sum is less than 100% I want to distribute the remainder among the cells that are below 20%. I want to do this until the total is 100%. So the new percentages have to be entered in the appropriate cells.
How can I do this? I need some sort of loop but I can't get anything to work. With a 'for each cell' statement I always get Value#.
View 9 Replies
View Related
Aug 8, 2013
I am trying to loop through a range, checking for a cell to contain one of two characters and then put a value in a cell to the side (well 3 away) of it. Im getting an error for Type mismatch on line:
VB:
If CellContent = "h" Or "v" Then
the data in the cell is an along the lines of '12.34.56.43 som-thi-vh-ng1'
VB:
Dim MyRange, MyCell As Range
Dim CellContent As String
Sheets("Sheet1").Activate
[Code]....
View 1 Replies
View Related
Sep 30, 2013
I tend to use a lot of For Each loops when I want to go through a range looking for something but this time I'm not so sure it will work.
I have 9 databases each containing over 400 rows with different pieces of client information, these databases are shared between around 40 people (I've also used the 'Allow users to edit ranges' utility to restrict access). What this means however is that the users cannot delete an entire row, instead they can only 'clear contents' on individual cells. This is fine until I try to generate statistics from the databases using autofilters which stop at the first blank row.
So I need to write a backwards for each statement that starts at the bottom and deletes all the blank rows on the way up to the top. I've tried similar things to this before using the For Each but when you use it to delete a row it sometimes skips the next row as it continues at the next one.
I've not managed to get it to work before, I'm just looking for a little guidance really as to how to do this correctly.
VB:
For TopRow = 1 To BottomRow = Range("A1").SpecialCells(xlCellTypeLastCell).Row Step -1
'If is blank delete row.....
Next
View 1 Replies
View Related
Sep 15, 2014
I am working with loans, and I'm trying to program a routine that adds every installment a client owes, so I can know the total amount owed, depending on how many unpaid installments she has. Let say for a client I have every installment in column A (rows 1 to 5), and in column B, I want to add them all. The output should be
Cell B1: "sum(A1:A5)"
Cell B2: "sum(A2:A5)"
Cell B3: "sum(A3:A5)"... and so forth
Since I have many loans, I need a dinamic routine to that sums every installment, where amount of installments vary from client to client. My proposal is (adding from the last installment to the first one):
VB:
months = 4 'an example
For j = 0 To months - 1
initial_row = ActiveCell.Row 'because I run this several times. In this example I am in row 18[code]....
For some reason this is not working, and what I see in Excel after running it is: SUM('AJ18':'AJ18'), which doesn't work.
View 1 Replies
View Related
Apr 28, 2014
I'm trying to understand a code from work and I can't get it. I copied only a part of the code here so please don't run it. Also, I have manual inputs in columns L and M (nodes labels such as 1, 2 and 2,3) and section labels on column N (such as BarFT3, BarFT4 etc):
[Code] ..........
What is this loop doing? I just get the first For loop: goes through every lable on colum N (from 1 to ne) but then what?
What is happening to range nudo(n,j)? How works this ">" sign between nudo(n.j) and nn?
View 1 Replies
View Related
Aug 14, 2014
how do i put the following as loop. Range("A2) then Range("A4") then Range ("A6) and so on.
View 8 Replies
View Related
Jul 22, 2008
I have a spreadsheet which I need to remove all the blanks from, but instead of shifting cells up (I figured out how to do that in a macro), I want them to shift left.
I understand the basics of for...next loops etc, but I can't seem to understand how to make the selection in a range string variable. Not sure if this is a good explanation!
The code I have so far is....
View 10 Replies
View Related
Feb 13, 2009
I have an excel sheet with set ranges in it. I would like to refer to these ranges in my code, but i am doing something wrong. Here is a portion of the code. The range name is 'Status'
View 4 Replies
View Related
Apr 6, 2012
This little piece of code is where I'm having problems.
A36:A45 will always be the same.
The problem is in getting ("R2:AA2") to move to ("R3:AA3") ...
What needs to happen for the loop to work?
Code:
Worksheets("List").Select
Range("A36:A45").Select
Selection.Copy
Worksheets("Month").Select
Range("R2:AA2").Select
I've tried:
Dim rngDC as Range
then Set rngDC = Worksheets("Month").Range("R2:AA2")
So that I can later use rngDC = RngDC.Offset(1,0)
However, when I try rngDC.Select I get an error saying I can't select the variable that way.
Here's the complete code:
Sub Import()
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True
With Sheets("Month")
[Code] ....
View 2 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
Nov 25, 2008
Image column A, starting at A2 to LASTROW of say 10, I have the LASTROW value stored in a variable.
Each cell in the range contains a file location/document name, example:
C:Documents and Settingsuser-idDesktopDOCSDoc01.xls < cell A2
this repeats for A3, A4, to A10, for each different document.
So starting at LASTROW + 3, I've created a new Header for Hyperlinks: and below that I want to create the 10 hyperlinks for each of the 10 documents above.
formula is =hyperlink(a2,a2) and then (a3,a3) and so on...
View 9 Replies
View Related
Aug 11, 2009
Do Mymacro1
loop until
I've tried a couple of ideas but none seem to work. I even googled this hoping that since this seemed like such a simple thing that I couldn't be the first person to run into this... guess I was wrong. the range of cells is BF30:CF56. I tried using a cell in the worksheet to test if all the cells equaled 0, that didn't work, even after I wrote the calculate code into the macro. Nothing I try seems to get the code to stop. is there somthing I'm missing?
View 9 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
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
Oct 24, 2007
I am reviewing a macro someone left at a client, but I am stuck on the rowcounter declaration.
View 7 Replies
View Related
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
Apr 11, 2014
I have below VBA code which output with adding , in between ranges. I am looking for way to running loop through range backwards.
[Code] ......
View 4 Replies
View Related
Dec 10, 2009
i created list in Excel and i wrote into (a1 cell-income, b1 cell-expence, c1 cell-kredit and d1 cell-debet). i enter a2 cell income (for ex:1000) and b2 cell expence (for ex: 100) and I give condition in VBA that if income greater than expence then VBA writes a2.value-b2.value into d2 cell else if expence greater than income then it writes b2.value-a2.value into c2 cell but i only define this one row (for ex: c2, a2. b2. d2).
i would like to assign it the rows as long as i want
that is i would like to create loop
(for ex: a(i), b(i) and so on
here is
View 3 Replies
View Related
Mar 14, 2012
I have merges cells starting at "AS18:CC18" and continuing through "AS616:CC617". I want to loop through each row from row 18 to row 617 and perform an action on the cell content (
code to loop through "AS18:CC18" to "AS616:CC617"?
View 1 Replies
View Related
Jun 20, 2012
I have a range (C3:C56). I have a set number in each of these cells. I also have a range out to the side that calculates a number after input a % in cell BI2. The formula reads as "=AE3-(AE3*$BI$2)". Basically it is reducing the values in my range. If a number is in my range is 8 and i input 25% in cell BI2, then my result would be 6.
I have a few steps I want to happen with this range.
1 Display an input box asking for a percentage
2 I want to loop through my range and use that percentage to reduce the numbers
3 (optional but would be amazing to have) after the reduced value is determined, round down to the nearest multiple of 4.
View 9 Replies
View Related
Sep 29, 2012
I am wanting vba to loop though a range basically till the last row of the column however within the loop the row gets inserted and the lr which is pre defined does not change. I want to be able to change my lr within the loop, maybe reset it or something...or may be alternative..
I tried using a method where it will loop through a each cell in col however that takes too much times....because it is going through each column...
Code:
lr = Cells(Rows.Count,
Code:
iCol).End(xlUp).Row
For y = 1 To lr
Cells(y, iCol).Select
If ActiveCell.value "" Then
[Code]....
View 4 Replies
View Related
Dec 6, 2013
I'm working with reports where I am given a list of used RFID tags which contain 13 alpha-numeric characters, and need to compare it against another list, in order to determine if any are matching. I'd like to be able to loop through one column of values to compare against the other, but unfortunately my VBA skills aren't that great..
View 5 Replies
View Related
Jul 17, 2008
I am trying to do is use a loop to store data from a range into a 3 or 4 dimensional Array and then output the data from the Array in another range. so for example the i want loop through the data in this range and store all data that is in account 701 into an array and then output this information in another range (tab). The data would have several different account but I only want to see one at a time.
Account Price Amount 701 150 1,000,000 701 125 250,000,000 701 3.25 6,000,000 702 4.25 25,000,000 702 2.35 3,600,000 702 2.55 10,000,000
View 9 Replies
View Related
Feb 27, 2010
I'm trying to get my head around using this syntax for EVALUATE() to allow an entire range of values to be changed all at once instead of via loop.
This macro works:
Sub TruncateValuesInSelection()
'JBeaucaire 2/23/2010
'Select a range and then run the macro to truncate values without looping
Dim Cell As Range
With Selection.Cells
.Value = Evaluate("IF(ROW(1:" & Selection.Cells.Count & "),TRUNC(" & .Address & ",2))")
End With.........
View 9 Replies
View Related
Jun 22, 2006
How do you assign a loop counter value to a range row value? Scenario: Add cells from a column that aren’t successive. SUM C10 + C17 + C24 etc
Private Sub CommandButton1_Click()
Dim total As Integer
Dim counter As Integer
For counter = 10 To 700 Step 7
total = total + Range("Ccounter")
Next counter
End Sub
View 2 Replies
View Related
Aug 19, 2006
'How do I use a FOR NEXT loop on a union to just list all cell values in Col A?
'Just need a little help getting a handle on ranges and the union of ranges.
' This is my first time posting a question so any patience is appreciated.
Dim r1 As Range
Dim r2 As Range
Dim myMultipleRange As Range
Dim xCell As Range
Set r1 = Sheets("Sheet1").Range("A1", Range("A65536").End(xlUp))
Set r2 = Sheets("Sheet1").Range("B1", Range("B65536").End(xlUp))
Set myMultipleRange = Union(r1, r2)
r1.Select
For Each xCell In r1
'Ive been using this type of code to access anything I need from a sheet.
Debug.Print r1(xCell.Row, 1), r1(xCell.Row, 2), r1(xCell.Row, 3)
Next xCell...............
View 9 Replies
View Related
Sep 9, 2006
I created a sheet that asks the user a question and they have to pick a value for two types of categories. One to the left of the question and one to the right. I am trying to populate a scatter chart based on the range picked for each category. An example of the way my sheet is arranged is below. Does anyone know the macro I would create or any other way to do this?
View 4 Replies
View Related