Setting Up An Array On A Macro
Jun 24, 2008
I need to setup an array to look in 408 or so names and I don't want to have to write ("billy", "beth", ... ) etc - I just want it to scan array A3:A408 instead and unsure how to write the macro to do this.
Sub Echo_Monthly_CSR_June()
Windows("Monthly Macro Insert.xls").Activate
Sheets("CSR Data").Select
Dim MyArray As Variant, x As Long, c As Range
MyArray = Array("A3:A408").Select
For x = 0 To 405
With Workbooks("Monthly Macro Insert.xls").Sheets("Copy & Paste Echo")
Set c = .Cells.Find(What:=MyArray(x), After:=.Range("A1"), LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False)
If Not c Is Nothing Then..............................
View 9 Replies
ADVERTISEMENT
Oct 16, 2012
I am trying to set an Array to prompt user with a series of questions and input answers into a specific row. However, I want to skip over certain columns and leave those blank. How would I modify my code to do this?
Code:
Private Sub CommandButton2_Click()
Dim ArrQues() As Variant
Dim ArrInput(2) As Variant
Dim lngLstRow As Long
Dim strPNfromSales As String
ArrQues = Array("Enter the Part Number.", _ "Quantity Being Returned?", _ "What is the Reason for Rejection?")
For b = LBound(ArrQues) To UBound
[Code]...
I want the first two questions to be input into Column B & C, but then the third question to be input into column I.
View 2 Replies
View Related
Aug 10, 2009
Im trying for quite some time now to set the array in the 2nd dimention of a 2D-array to the result of a function which returns an array of dbl but i just can't get it to work.
The result of the Interpolate-function has the same length as mintSpan.
ReDim dblProductionRate(1 To 5, 1 To mintSpan)
For intHC = 1 To 5
If CheckHC(intHC) And Owner.CheckHC(intHC) Then
dblProductionRate(intHC) = InterpolateProductionProfile(intHC, mdblReserves(intHC), GetProfiles(intHC))
View 9 Replies
View Related
Dec 12, 2013
I'm trying to set a range variable ('IngFore') as equal to a number of rows long and a number of columns wide via 'Cells'. The range needs to be dynamic in that the total number of rows and columns will vary over time. Hence, I've defined 'lastdate' to determine the last row in the array, and 'lastcol' to determine the last column in the array. The starting point for the array is I12.
It would appear that I can't quite get the syntax right.
Code:
Set IngFore = (Cells(12,9 to lastdate,9)),(Cells(12, 9 to 12, lastcol))
I've tinkered with it here and there, removing and adding brackets but I can't get it to work.
View 3 Replies
View Related
Oct 19, 2013
I'm trying to delete both rows of the same data not just one.
item
warehouse
location
PANT
7050
2
A1-05-89
PANT
5051
2
B1-19-19
SHIRT
7050
2
J1-08-67
SHIRT
7051
2
J1-08-67
What i need is if there is a same location delete both rows and i cant figure it out to get it to do both of them not just one row.
View 9 Replies
View Related
Aug 2, 2008
I have set up a form with the following macro with a password. The Macro works fine, but When the user enters the password it appears on the screen. I want the password to be seen as ************ on the screen. Please amend my macro, so that when the user enters the password, it appears as ********** on the screen
Private Sub CommandButton1_Click()
If Me.txtpass.Value "Mike1" Then
MsgBox "Incorrect Password!"
Exit Sub
Else
Me.Label3.Visible = True: Me.Label4.Visible = True
Me.ComboBox1.Visible = True
Me.CommandButton2.Visible = True
Me.ComboBox2.Visible = True
End If
End Sub
View 9 Replies
View Related
Nov 12, 2008
Trying to make a error checking macro (if field is blank, then erro prompt and change textbox backcolour to red). However, I have a lot of text boxes, and my current macro is
View 3 Replies
View Related
Oct 22, 2009
I've been told the latest Excels will allow any workbooks in a certain folder
to run macros as trusted (regardless of security setting?).
Can anyone confirm this please? Is there more to it? What versions are affected? Mine is 2003 so I can't check for this.
View 9 Replies
View Related
Aug 18, 2006
I have a excel sheet with multiple sheets in it.And I have a VBA macro which split all those sheets into one file each.When I am trying to print one file(SHeet) which has more than 15 columns it is printing in two pages(Width).Is there any code i can use so that when ever i open a file which was split by me and give print command the width should fit to the page and peint.
View 6 Replies
View Related
Sep 12, 2006
In the code bellow I would like to automate a if function until the 1st emptycell in the row 7 of my spreadsheet.
In my IF function, I would like to refer to a fix cell ("B1") while the other argument is in the same column as the function but two rows bellow.
My problem is that I don't figure out how to refer to a fix cell with the syntax I would like to use t run the macro.
I think it's more clear when you'll see the code
Sub Face2face()
Range("B5").Activate
Do
If ActiveCell.FormulaR1C1="=If(R[2]C>=Range("B2"),Range("B2"),R[2]C)"
ActiveCell.Offset(0, 1).Select
Loop Until IsEmpty(ActiveCell.Offset(-1, 0))
End Sub
View 8 Replies
View Related
Nov 7, 2006
I try to plot an XY graph with a VB macro but I don't manage to select the right name of the active sheet.
Sub plot()
WksName = ActiveSheet.Name
Worksheets(WksName).Activate
Charts.Add
ActiveChart.ChartType = xlXYScatter
ActiveChart.SetSourceData Source:=Sheets(WksName).Range("A11:F12"), PlotBy:= _
xlRows
ActiveChart.SeriesCollection(1).XValues = "=WksName!R5C8:R643C8"
ActiveChart.SeriesCollection(1).Values = "=WksName!R5C9:R643C9"
ActiveChart.SeriesCollection(1).Name = "=""Specular"""
ActiveChart.Location Where:=xlLocationAsObject, Name:=WksName
End Sub
View 6 Replies
View Related
May 6, 2009
Is there a setting within excel that could cause a user to get a run-time error 1004? I have a workbook with a macro that adds additional sheets to the workbook when a button is clicked. The thing works fine on my machine and 3 or 4 other machines that I have had guys test it out, but I have a user that it will not work for. He is at a location about 3 hours away so I cant see exactly what he is doing, but he says after he clicks the button he gets a run-time error 1004 that says "Unable to set the PrintQuality property of the Page Setup class". I'm thinking that it is a setting within excel?
View 5 Replies
View Related
Aug 15, 2009
How do you set the font for a textbox and or listbox? I have tried:
View 4 Replies
View Related
Oct 7, 2009
Trying to write a macro to transcribe data from columns in Sheet1 to Rows in Sheet2. Assuming there is a blank between each record. I get an error on the "Set Rng1....." line.
View 4 Replies
View Related
May 23, 2007
I have my Macro Security setting sets to 'Medium'. How can I auto launch my macro (ex. name - MyMacro) everytime I open the workbook ?
View 9 Replies
View Related
May 29, 2009
I need to write a macro to set the print area to the first two columns (A & B), and the last 12 columns (the last column may change). In both cases I need to print all rows (start is row 1, last row is variable). I am trying to achieve something like the "Freeze Pane" effect with the printer. The first two rows contain column headers (dates). The first two columns contain information that needs to be included on the printout, whilst the last 12 columns contain the most recent data.
Various cells withing the selected ranges may be blank, but no row or column will be entirely blank.
View 2 Replies
View Related
May 5, 2009
I am a starter in VBA. Below is apart of code in which I am getting run time error 13 at the bolded and the under lined line.
View 2 Replies
View Related
Nov 12, 2008
filling an Array then I have used in this macro?
View 3 Replies
View Related
Aug 5, 2013
I need to write one Macro program for below logic.
A
B
C
123
123
‘TRUE’
123
234
‘TRUE’
[code]......
View 3 Replies
View Related
Jul 31, 2008
Have this workbook with over 34 worksheets. Exactly 31 sheets have over 700 rows & 5 columns of array formula. The cell references for these formulae are on "Sheet2" and the values in Sheet2 get populated after the macro is executed for Sheet1.
The macro when run, takes helluva time to complete and populate the values in these 31 worksheets. If I turn off the calculation, it throws out a an exception and on the top of it I have noticed sometimes that the computer hangs itself and becomes DEAD. The only option I got is to press the Reboot Button.
The same macro when run on less than 100 rows, works like a treat ! Could someone help me resolve this high density problem, the Excel way (I am not in a position or a situation right now - to use ADO Recordsets to rectify this problem and neither do I know how to use it). So if your suggestion asks me to use the ADODB then unfortunately it will not be helpful to me at the moment
I have tried by all means and now I am stressed out.
Sub try()
Worksheets("sheet1").Activate
Range("A5").Select
ActiveCell.FormulaR1C1 = "=R[-1]C"
Range("A5").Select
Selection.Copy
Range("A6:A65536").Select
Selection.SpecialCells(xlCellTypeBlanks).Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
View 9 Replies
View Related
Feb 5, 2009
I've gotten were Cell formulas.
I need this for VB code, for an array that is the product of another macro hence it's dynamic.
B 3
E 2
E 8
D 2
B 1
B 7
How do I subtotal Col A,B according to Col A?
Total 3 B entries with a subtotal of 11
Total 2 E entries with a subtotal of 10
Total 1 D entry with a subtotal of 2
View 9 Replies
View Related
Oct 31, 2006
The attached has a mega array formula that really slows down the recalc on this spreadsheet. I would like to use a macro to write the value of the formula to the worksheet "Database" column J.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub
If Not Intersect(Target, Range(Range("rReason").Offset(1, 0), Range("rReason"). _
Offset(UsedRange.Rows.Count + 1, 0))) Is Nothing Then
Target.Offset(0, 1) = Application.VLookup(Target, ValList.Range("ReasonLkUp"), 2, False)
'This formula below needs a VBA equivalent
' Target.Offset(0, 4).FormulaArray = "=IF(MIN(IF(R7C3:R35000C3=RC[-7],IF(R7C8:R35000C8>0,R7C8:R35000C8)))=RC[-2],MIN(IF(R7C3:R35000C3=RC[-7],IF(R7C8:R35000C8>0,R7C8:R35000C8))),0)"
End If
If Not Intersect(Target, Range(Range("rSurname").Offset(1, 0), Range("rSurname"). _
Offset(UsedRange.Rows.Count + 1, 0))) Is Nothing Then
Target.Offset(0, 1) = ActiveCell.Offset(0, -2) & " " & ActiveCell.Offset(0, -1)
End If
End Sub
View 9 Replies
View Related
Dec 20, 2006
I have a array which includes zero's and based on this array I would like to create a new (almost identical) array, where the cells with zero's are omitted.
To illustrate, I would like to make some code which will bring me from OldArray to NewArray:
OldArray
(10)
(0)
(5)
(12)
(0)
(30)
(0)
NewArray
(10)
(5)
(12)
(30)
View 9 Replies
View Related
Feb 26, 2008
i've come across something that i'd like to do with regards to populating an array/variant not using a global variable.
i currenty have this for testing purposes which works, but perhaps not the best solution?
Private vntArrayCodes() As Variant
Sub populateVntArrayCodes(ByVal intArrayCount As Integer, _
ByVal strCode As String)
Redim Preserve vntArrayCodes(intArrayCount)
vntArrayCodes(intArrayCount) = strCode
End Sub
Is there another way to do this without using a OO Classes?
View 9 Replies
View Related
Jun 7, 2008
I have been trying to take a variant array that has 6 columns, output it to a new worksheet (although I would prefer to just sort the array but can't get that working - how I can do this please feel free), sort the worksheet by 2 different columns, and then move these values back into the original array. I think I have the dumping and sorting down but I can't figure out the putting back into the array part. Here is the code I have thus far. varRecords is the array I am dumping to the new worksheet.
Dim dumpSheet As Worksheet
Set dumpSheet = Sheets.Add
Range(Cells(1, 1), Cells(1, UBound(varRecords))) = varRecords
Range("A1:F" & numRows).Sort Key1:=Range("C2"), Order1:=xlAscending, Key2:=Range _
("A2"), Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase _
:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, _
DataOption2:=xlSortNormal
View 5 Replies
View Related
Jun 12, 2008
I am working in a macro that will do some calculations and I would like to end it by plotting the results in some charts. Results are in one dimension array form, with probably more than 1000 elements. Can anybody tell me if there is any limit for the arrays that are going to be asigned to the XValues and Values of the chart?
View 14 Replies
View Related
Aug 4, 2009
I have created a macro that loops through and creates an array of the visible sheets. Now I would like for it to print each of those sheets out. I think my main mistake is in my declaration of the array type, since I have not worked with arrays much before.
how to make the following code operable. Currently when I run it I'm getting a "Run-time error (9): Subscript out of range" error.
View 2 Replies
View Related
Nov 10, 2011
I often have to research long sheets of data, which requires filling data in on my research sheet from several different sources. The research sheet has a file # in A and a vendor # in C. The data sources have the file #s & vendor #s in varying columns, but I use a pivot table to end up with file # in A, vendor # in B and the needed data in C.
The length of the research sheet varies from month to month - often 800-900 rows, so you can imagine how tedious it is to find the correct file #/vendor # combination to plug the data in. (Many of the rows on the research sheet will not have a row on the data source sheet.)
I managed to get an array formula in one of the columns on the research sheet that actually DOES work:
Code:
{=INDEX('Acct Activity'!C$1:C$7,MATCH(A7&C7,'Acct Activity'!A$1:A$7&'Acct Activity'!B$1:B$7,0))}
But the problem is that it returns #N/A in any row that doesn't have any data. This messes up the sum formula in the farthest right column. So, I tried to incorporate an ISERROR in with the formula, but couldn't get it to work; it left all the cells blank.
In the meantime, I got to thinking that, since there are up to 3 columns requiring data on the research sheet & each column's data comes from a different source, wouldn't it be great to have a macro where I could use a couple of Input Boxes: 1 that would let me click on the column where the data NEEDS to go & 1 that would let me tell it (either by typing the worksheet name or by clicking on the worksheet " PREFERRED " where the data come from)!
So, I spent the entire day yesterday trying to make any of that work & can NOT figure it out! I got the macro to pop up the first input box, & can key in the column letter, but clicking OK doesn't do anything. Yesterday, I had it so I could click OK & the box would go away, but nothing else happened & the second box wouldn't work right.
THEN, I started trying to figure out how to do an array formula in a macro & my head nearly exploded! I have a terrible time trying to understand written descriptions if they're in "tech speak", so it was all greek to me.
Here is all the farther I got with the macro:
Code:
Sub ClearingRsch()
' Jenny 10092011
With Application
.ScreenUpdating = False
.EnableEvents = False
.Calculation = xlCalculationManual
.DisplayAlerts = False
[Code] ......
View 9 Replies
View Related
Jun 15, 2012
Here is my macro
MyFileName = Sheets("Macros").Range("B1").Value
MyFileNameTwo = Sheets("Macros").Range("B2").Value
Sheets("Blank").Select
Sheets.Add After:=Sheets("Blank")
[Code] .........
Issue with array that's bolded The way it is set up is to rename the 3rd sheet to MyFileName and rename the last sheet to MyFileNameTwo. The file names will remain constant. They will always be the 3rd and last sheets, but the number in between will vary. Is there anyway to select the 3rd sheet through the last sheet to delete these? When I use the array it wants sheet names but those are based on multiple variables in other workbooks.
View 3 Replies
View Related
Apr 30, 2008
I have created an array in Excel VBA 2003 and successfully loaded it with values. The array variable is called "Week". I am currently getting the sum of the numbers in the array by creating a dim variable that adds them statically one at a time:
Dim finalvalue As Integer
finalvalue = week(1) + week(2) + week(3)
That works, except as time goes on there are more weeks and I need to dynamically add all the values together in one fell swoop.
View 9 Replies
View Related