Tracking Forums, Newsgroups, Maling Lists
Home Scripts Tutorials Tracker Forums
  Advanced Search
  HOME    TRACKER    Excel


Advertisements:










Create An Array In VBA


I am trying to create an Array, and have searched through many threads on this website and realise I don't have a basic understanding of Arrays. Specifically the ReDim Array function.


View Complete Thread with Replies

Sponsored Links:

Related Forum Messages:
Sum Array In VBA And Clearing An Array
1) after I have made an filled an array with data.
Dim orders(100000 To 200000) As Double
I want to then sum the orders above and below a number, lets say
orders>orders(150000)
and
orders

View Replies!   View Related
Create A Table From An Array
I have an array which I would like to extract the information and put it in a table in a spreadhseet. Does anybody knows a faster or better way to do it different than using a for next?

View Replies!   View Related
Create Array Of Variables And Sort
I have a dynamic number of rows each with three colums of values. These varaibles I want to fill an array with but I don't know how.

Now I've just "concated" these three variables into a string and then I intend to split the string into rows by the third comma. (see below)

I think it's easier though to use an array and I really appreciate some assistance. Please tell me also the best way to sort the array. It will be sorted by var_Status which is an integer. (sort order: max positive to max minimum)

PreString = PreString & var_StartWeek & ", " & var_Status & ", " & var_Totalh & ", "

View Replies!   View Related
Create Standard Deviation From Array
I am fairly new to VBA, i require some help creating a Standard Deviation UDF using arrays, i have made a userform that allows a user to select anywhere between 1 to 30 companies (A1: AD1) and its corresponding stockprices (A1:A60) in a sheet called companydata, using the following sub, my problem is that i am unsure how to create a function using the info the user selects. I have also created a returns function (below) but this is vba is saying that there is a out of range error, Will anyone be able to help please.

Below is the code i am using to allow for my sub: ....

View Replies!   View Related
Create A Dynamic Array So That When A User Enters The First Sheet Name Via An Input Box
I'm trying to create a dynamic array so that when a user enters the first sheet name via an input box, excel will know to select the other sheets with ending (2), (3), (4) etc.

Currently this code works only if there are 4 sheets present (as I set this way), anything lower/higher is out of range.

How do I make it so that it will select sheets if there are less than 4 sheets present?

I tried nesting, but I pretty sure this array needs redimming or something. Is ubound a better option?

View Replies!   View Related
How To Create VBA To Delete Previous VBA Modules
I would like to create some VBA that looks for sub's or modules and delete them.

View Replies!   View Related
Using VBA To Create VBA Code On The Fly
I have a vba module that reads a value from a txt file and saves that value in a variable called "iniInfo". I want to permanently assign that value programatically by using VBA code to create a Public variable e.g. "PUBLIC CONST conFIg = iniInfo" in my modGlobalVar Module. (Of course, this would only create the code if the "conFig" variable doesn't already exist.)

View Replies!   View Related
Create Array Of File Names/sheet Names
Two part question:

1) I'm relatively new to arrays, but what I need to do is generate a list of file names and the sheets within each one. I would like to use an array for this, but since I don't have much experience.... well....that's why I'm here. Can someone point me in the right direction?

2) And the second part of this.... I was planning on using the FileSystemObject to determine the files in a selected folder and loop through that list of files, opening each one and harvesting the required info (file name and all sheet names). Should I use the FSO or is there something built into Excel that might be better (and also limit the number of dependencies for this little "project" of mine).

View Replies!   View Related
Array Formula In VBA
I have a lengthy array formula that I try to enter using VBA. I get the common run-time error. I tried breaking it down, but that did not work. Maybe the syntax was wrong in the break down. Can some help out please?

=IF(COUNTIF($B:$B,B2) 1 Then
Range("B" & x).EntireRow.Delete
End If
Next x
Application.ScreenUpdating = True


View Replies!   View Related
VBA How Can I Pop These Into An Array
i have 3 columns of data... i want to populate an array from anything in column 1 that has an 'N' in column 3...

View Replies!   View Related
VBA Initial Array Value
I have declared arrays for the variables in the code segment below. There is however a problem with the way I've initialized C and F as I the compiler stops C(1) and displays the message: "Compile Error: Expected Array." For the calculation to proceed correctly, the first values of the C(i) and F(i) arrays need to be one and zero respectively.

Is there a way to initialize these variables to these values?

Art

C(1) = 1
F(1) = 0
G(1) = Y(1)
B(i) = C(i - 1) + Q
C(i) = (1 + B(i) ^ (-1)) ^ (-1)
F(i) = 1 / (1 + B(i))
G(i) = F(i) * G(i - 1) + (1 - F(i)) * Y(i)
arrKAL1(i)= G(i)

View Replies!   View Related
VBA Array Basics
Lets say I have this....

PHP
Dim B as Rangeset B = activesheet.range("A1:C3")Dim a(3) As Doublea(1)= 1.2a(2)= 3.6a(3)= .27 

B is a 3x3 Matrix of values in your sheet

How would I perform matrix multiplication of B * array "a"?

My main problem is with how to reference then entire array "a" and how the data is being stored (is the array a 3x1 or a 1x3). And if there is a VBA MMULT command or if building my own or using the worksheet one are my only options.

View Replies!   View Related
Median Of VBA Array
Hi, Im using a array in Excel VBA, i got a method which looks at a element no of the array as as a return for that array, i have got it to sort the array, i just need some help to find the middle number (median) of the array.

View Replies!   View Related
VBA Control Array
I have a form that launches when a user wants to confirm an order from a customer. It loads a drop-down combo box with our current customer list. When the user selects a customer, a checkbox array is loaded with the items that a customer has ordered. The checkboxes confirm (or un-confirm) that the order has been processed. Everything works fine up to this point. Let's say the user selects a customer, and this customer has 7 orders. 7 checkboxes appear on the form, either checked or unchecked.

The problem is:
when the user selects another customer from the drop down that only has 3 orders. The 3 checkboxes appear just fine, however, the balance of the previous customer (orders 4-7) also still show on the form. How do I remove the previous checkboxes from the form and prepare for a new recordset (or new checkbox array). I have tried to run backwards through the code that creates the array using Me.Controls.Remove instead of .Add, and this is just not working.

View Replies!   View Related
Constant Array In Vba?
Is it possible to use a contstant array in Excel VBA? I have tried several differnt ways to declare it, but the VBA editor keeps yelling at me. The following did not work:

View Replies!   View Related
Passing Array To VBA
Passing Array to VBA. I have the following

View Replies!   View Related
VBA Headers And Array
I just joined this message board after having very little success in altering my VBA code. I have a data file and when I run the VBA code, it only works partly. Currently when I run the code, it will create new month headers, but only for a 12 month period and it is based off the current date on the computer. I need this to go to whatever specified date range I choose and I especially need it to go for more than 12 months. I am also having some issues because when my code runs, it is not running back far enough and there are gaps in the analysis that it does. For instance, after changing the time on my computer to 2009, project A and B's data stops in June 2009, even though the define phase is occuring before that. I have attached the code.

View Replies!   View Related
Array Variables In VBA
Is there any way to add together a portion of an array without using a loop or for statement. i.e.) I have a array variable: arrayvar = array ( 1, 2, 3, 4, 5)

is there a way to sum the last two numbers in the array without using

arrayvar (3) + arrayvar (4) or a loop or for statement.

I am thinking something along the lines of worksheetfunction.sum( arrayvar( 3 to 4)) I know that this does not work but I hope you can see what I am trying to do

View Replies!   View Related
Create Graph Using VBA
I want to create excel graph using VBA and found difficulties on chart name set to default.

the script is like this :
ActiveSheet.ChartObjects("Chart 31").Activate

Can I set my own name of the chart instead of "Chart 31" (excel default) ?


View Replies!   View Related
VBA To Create New Sheet ...
I would like to be able to have a macro, linked to a button, so that when you press that button it creates a new named sheet based on data in a particular cell.

I.e. There is a table with the following data:
Apples (A1)
Oranges (A2)
Pears (A3)

There are also the sheets Apples, Oranges & Pears.

You enter 'Grape' in cell A4, then when you press the button it creates a new sheet named Grape.

Also when a new sheet is created, the 'input cell', in this case A4, is moved down one so that when the next sheet is needed to be added, it doesn't just add the same sheet (i.e. in the example above, we don't end up with a new sheet named 'Grape' each time we click the button).

View Replies!   View Related
Create Textfile With VBA
I want make a VBA code which can create a .txt file in a folder and if that file already exists it doesn’t overwrite that file.

View Replies!   View Related
Create Tag In VBA?
I found this really cool code that creates a tag cloud in Excel using VBA. It's far too complex for my understanding but I was hoping I could get some of the experts opinions on here about modification possibilities. I have attached the macro-enabled 2007 workbook. What I am trying to do is search through a list of keywords and determine each keyword's density within a list. The list for example could look like this:

slow windows xp
windows xp running slow
windows xp computer
[slow windows xp]
[windows xp running slow]
[windows xp computer]
[computer running slow windows xp]
"computer running slow windows xp"
"slow windows xp"
"windows xp running slow"
"windows xp computer"

You'll notice the characters " [ ] of which I would like to ignore when the cloud builds. The cloud would list the most dense keywords first, and gradually decrease to the least dense keywords. The macro code is inside the workbook but I'll list it here to:

View Replies!   View Related
Create VBA InputBox
I am trying to create an inputbox using code from this site:

Sub NumericDataType()
Dim lNum As Long
On Error Resume Next
Application.DisplayAlerts = False
lNum = Application.InputBox _
(Prompt:="Please enter you age.", _
Title:="HOW OLD ARE YOU", Type:=1)
On Error Goto 0
Application.DisplayAlerts = True
If lNum = 0 Then
Exit Sub
Else
MsgBox "You are " & lNum & " years old."
End If
End Sub

I get an error on the first line that says, "Compile error: argument not optional".

View Replies!   View Related
Create Folders VBA
I m having difficulty combining code to do this; create folder in network drive from excel list

T:Bob
Then subfolder T:BobFinancials
Then subfolder T:BobSecurity

View Replies!   View Related
Entering A Formula As An Array In VBA
My VBA sub contains
DIM sFormula As String
DIM rCell as Range

at some point in the code, the value of sFormula is set to something like
=ROUND(SUM($A$5:$A$10*$B$5:$B$10),2)
(not really this formula but of that flavour)
later in the code I have an instruction
rCell.FormulaArray = sFormula
(rCell is set to a single cell at the time)

When I run the code and then examine the cell, I find that the cell's formula has been correctly set to
=ROUND(SUM($A$5:$A$10*$B$5:$B$10),2)
however there are no {curly brackets} surrounding the formula to suggest that it has been entered as an array.


View Replies!   View Related
Quering An Array VBA: Get Blank
I read the my worksheet data into an array. I want to select only row that satisfy certain conditions. But I get blank rows for those that don't satisfy the conditions.

View Replies!   View Related
Maximize Performance Of Array In VBA
I'm trying to write some code that is performing operations on large arrays, using a pair of For loops. In languages like C++ and Fortran, it makes a big difference to the performance of the code which way round you put these 2 For loops, due to the way that array data is stored in the computer memory. However, for VBA, I've no idea which way round this is. For an array, A(i,j), do I want


For i = 1 To N
For j = 1 To M
A(i,j) = Cells(j, i).Value
Next j
Next i


View Replies!   View Related
Sort An Array In VBA Memory
two parts:

1.
The following is the VBA version of what i've been using:

Range("A1:J1000").Sort Key1:=Range("D2"), Order1:=xlAscending, Key2:= _
Range("E2"), Order2:=xlAscending, Key3:=Range("F2"), Order3:=xlDescending _
, Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:= _
xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, _
DataOption3:=xlSortNormal
now arrays are bigger than 1000 rows>> even bigger than 65536.

Such an array is stored in "arrBIG" and dimed as (1 to 10, 1 to 100000). The goal is to sort it by the 4'th, then 5th then 6th values in the first dimension - the one that is 1 to 10 - i call this the column.

arrBIG.Sort Key1:=4, Order1:=xlAscending, Key2:= _
5, Order2:=xlAscending, Key3:=6, Order3:=xlDescending _.................

View Replies!   View Related
Sorting Array's In VBA
I have an array that is 10 rows by 4 columns. I would like to sort the whole array based on sorting column 1 in descending order. Any good ideas to edit or write new code? Anything to send me in the right direction would be sweet as well!


View Replies!   View Related
How To Divide An Array With A Number In VBA
I have an array in my code and I need to divide each elements of the array with a constant.

View Replies!   View Related
VBA: Evaluating Values Against An Array
I am trying to loop through some rows within a worksheet in an effort to make sure the values match a list of values that are defined in an array. However, when I get to the IF statement, I always get a 'Type Mismatch' error.

Dim varRetailers
varRetailers = Array("Depot", "Lowes", "Sears", "TSC", "Walmart", "Z-Other")

For c = rowDataStart To rowDataEnd
If Cells(c, colRetailCat) varRetailers Then '

View Replies!   View Related
Use Vba Pass Array To C++ Dll
I want use vba pass array to c++ dll , and return another array back to vba example is below,but I return value always 0 , how should I do? ...

View Replies!   View Related
VBA Selecting A Variable Array
I've successfully copied the array of equations using the VBA that Pjoaquin enlightened me with from my last thread. The outcome was Sheet2!A2:O2 being successfully populated with the equations from my first sheet... but here comes the problem: I'm looking to autofill A2:O2 down to the last record in Column P. But the number of records in this table is varable.

View Replies!   View Related
Enter Array Formula Via VBA?
I have following Array formula in Cells N1:N3.

HTML =SUM(IF(O$4:O$1000="Total I/O Points",N$4:N$1000,0))

Each formula has different text in "".

There are a few macros in this workbook that delete and/or insert rows.
When that happens, the formulas listed above get modified with different references. How do I restore the formulas back to the same range reference [O$4:O$1000]?

View Replies!   View Related
Sumproduct In Vba (formula Array)
I have a function that has a formula sumproduct and here it is:

Set RSheet = Worksheets("Rawdata")
Set RSheet = Worksheets("Rawdata")

RSheet_lastRow = RSheet.Cells(Rows.Count, "A").End(xlUp).Row
RSheet.Range("AJ2:AJ" & RSheet_lastRow).Formulaarray = "=SUMPRODUCT
((V2>=ProjectedStarts!$K$1:$K$45)*(V2<=ProjectedStarts!$L$1:$L$45),ProjectedStarts!$M$1:$M$45)"

The problem is that when the formula is sent to each cell V2 (bolded) does not change to V3, V4, V5.

View Replies!   View Related
VBA - Selecting Sheets In An Array
I am trying to clean up a macro a little that used to look like the following:

Sub Refresh()

Sheets("Sheet2").Select
ActiveSheet.QueryTables(1).Refresh BackgroundQuery:=False
ActiveSheet.QueryTables(2).Refresh BackgroundQuery:=False
Sheets("Sheet3").Select
ActiveSheet.QueryTables(1).Refresh BackgroundQuery:=False

I want to set up an array and have the code run through a loop and have gotten stuck on the following:

Sub Refresh()

Dim i As Integer
Dim SheetName As Variant

It does not seem to want to go from the first sheet to the second. What am I doing wrong/what can I do better?

View Replies!   View Related
Use Trend Worksheetfunction On Vba Array
I am trying to use the TREND worksheet function on a vba array. I keep getting Runtime error 1004: Unable to get the TREND property of the WorksheetFunction Class. I can bypass the error (like it were a search with no result), but I get no result of any kind from the function. My search of other threads yields nothing concrete, but causes a guess that it may have to be used on a worksheet range not a vba array. But that's not actually stated in any of the threads, and I find no documentation to that effect. Is this the issue or is it something else altogether?

Sub test()
Dim knowny As Variant
Dim knownx As Variant
Dim newx As Integer
Dim myval As Integer
knowny = Array(2, 4, 6, 8, 10)
knownx = Array(1, 2, 3, 4, 5)
newx = 6
'On Error Resume Next
myval = Application.WorksheetFunction.Trend(knowny, knownx, newx)
' 'next error, err as normal.
' On Error GoTo 0
' Err.Clear
Debug.Print myval
End Sub

View Replies!   View Related
Create Comparison Code In VBA
I have to do monthly comparisons of two excel worksheets, one being a vessel timesheet and the other being an excel download from manpower software that we use. The comparison that is being made are days of the month, whilst the unique identifier between the two sheets (To make it easier to understand I will call them sheet1 and sheet2) is an employee ID. Both sheets, alongside the name and employee ID, list all the days of the month that employees have worked. If they have worked, there is a "1" under that day, if they have not the cell is blank.

What I currently do manually is:

1: Search for the employee ID (and/or name) in sheet1 and compare the days with the employee ID in sheet2.
2: Highlight the differences
3: Move onto the next employee ID

All differences are highlighted in sheet2. Differences highlighted are in the days only, where if any days are missing/extra in either sheet, then the particular cell(s) are highlighted in yellow. If an employee is missing from sheet1 but is in sheet2, then all the days are highlighted (in sheet2). If an employee is missing from sheet2 but is in sheet1, then that particular employee is copied to the bottom of sheet2 (after last row).

As this is horribly complicated to explain, I can attach an example if this is sounding rather inexplicable? Is it possible to attach a xls to a thread?


View Replies!   View Related
Create A Comments Box Via VBA
I want to create a comments box whenever a cell is double clicked in sheet "Settlements"

View Replies!   View Related
Create A New Workbook By Vba Of Excel
I want to the following steps to be done by vba of excel.

1. copy ranges of cells in the active worksheet (sheet3)
2. add a new workbook and paste the copied ranges to sheet1
3. save the new workbook with the new file name (e.g. date)
4. close the new workbook and clear the contents the copied ranges of cells in old workbook.

following code and make it more simpler?

Worksheets("Sheet3").Activate
If Range("l1").Value <> "" Then
Range("l1").Value = CDate(Date)
End If
asdate = Range("l1").Value 'date entered by user
resp4 = MsgBox(" Case particulars of " & asdate & " will be backed up and deleted from this sheet! Proceed? (Y/N)", vbYesNo, "Deletion of Data")
If resp4 = 7 Then
Exit Sub

View Replies!   View Related
Vba To Create A New File From Spreadsheet
I have the following spreadsheet:

A-------------B
File No.-----PRODUCT TYPE
123456-----NDT
123456-----NDT
123456-----NDT
123456---------
123456---------
789110---------
789110---------
789110---------

What I need is if there is an NDT in Column B and 123456 in Column A then I need to eliminate all rows which contain 123456.

End result

A
789110
789110
789110

View Replies!   View Related
How To Create New Sheet Using VBA In 2003
how i create a new worksheet using VBA in Excel 2003

View Replies!   View Related
Create Outlook Appointment From VBA
I am probably overengineering my macro, but I would like to setup an outlook appointment in two peoples calendars from my userform. The macro has access to the email addresses of the selected persons, I just want to send date/time and subject.

View Replies!   View Related
VBA To Create A New Folder From A Textbox Value
I don't know if anyone has tried this but it possible using vba to create a new folder in a directory from the text of a textbox?

I have made a userform that I use to collect a persons first name & surname.

I then created a folder in a directory manually (e.g Z:spnzphotos)

I then scan their photo and place it into the folder.

Is it at all possible to have a piece of code that once I press a command button is creates folder ready for me to add the photo to?

View Replies!   View Related
Create Vba Feedback Form
how to Create a Vba Feedback Form?

View Replies!   View Related
Remove Empty Array Items In VBA
I have an array MyArr() in excel.

Its length is from 1 to i where i takes dynamic value from varibable.

Now the problem is MyArr(1 to i) has some empty values.

Like say: if i = 5 then
MyArr(1) = "a"
MyArr(2) = ""
MyArr(3) = "b"
MyArr(4) = ""
MyArr(5) = "c"

How can I get rid of those empty elements so that MyArr() becomes only three elements long and then display them in a range of three cells.


View Replies!   View Related
VBA Sort String Array Function
I have a string that I need to sort.
Below code works beautifully but doesn't sort numbers, any advice to get this to sort numbers as well?

Function Alphabetize(ByVal sText As String) As String
Dim sWords() As String, sTemp As String
Dim i As Long, j As Long, n As Long

'-- clean up text
For i = 1 To Len(sText)
Select Case Mid$(sText, i, 1)
Case " ", "a" To "z", "A" To "Z"
Case Else: Mid$(sText, i, 1) = " "
End Select
Next
'-- remove leading and trailing spaces....................

View Replies!   View Related
Copy Array Formula To Other Cells Via VBA
{=AVERAGE(IF(('Sales Reports'!$A$1:$A$5000=$A3)*('Sales Reports'!$C$1:$C$5000=$C$1),'Break Reports'!$D$1:$F$5000))}

and am copying it to other cells using this
Sub copyformula()
With Sheets("Sheet2")
.Range("B3:B5000").Formula = .Range("B3").Formula
End With
End Sub
It does the copy but removes the { and } thus rendering the formula useless to me. How can I accomplish this task and keep the formula as an array formula?

I tried to drag the formula down and recorded it as a macro but when it runs it takes far to long.

View Replies!   View Related
VBA Array Function For Polynomial Coefficients
I have a VBA function that calculates polynomial coefficients for a series of data pairs. One selects the range of cells that the coefficients are to be stored in, and enters the polynomial formula:

{POLFIT(Xa, Ya, N)}

Where Xa is the array of ordinate values, Ya is the array of data values, and N is the polynomial order to be fit.

It is obvious that one needs to select at least N+1 cells when the array funtion is typed in. But, it is easy to select too few cells.

I am looking for a way to test whether enough cells were selected for the range formula: The function declaration is

Function POLFIT(Xa, Ya, N As Integer) As Variant

Various means I have tried to count POLFIT do not return the correct value.

View Replies!   View Related
Pass Cell Values To VBA Array
i'm trying to do my homework which requires me to pass values from an array in excel worksheet to VBA and print it in a msg box

i've tried

dim arr as variant
arr = range("A1:A6").value
msgbox arr

but it didn't work.

that's the first step of the homework the second is i have 2 list of array

year:1999 - 2002
profit:10,20,30,40

i have to find the max profit and get the year when it occurs

View Replies!   View Related
Copyright © 2005-08 www.BigResource.com, All rights reserved