String Array Values To Array Of User-Defined Types

Oct 2, 2008

I have a class module with several private variables, including one that is an array of a user-defined type. I am trying to set the values of a single element of this array with "Property Let ..." from a string array:

View 4 Replies


Using Array Constants In User-defined In Vba Function

Oct 1, 2009

I have a function in VBA of the type. Function MyFunc(Indx As Integer, k As Long, Rho As Range, A As Range) As Variant .... End Function

which is called as a user-defined function from within the Excel worksheet. When called with the last two arguments being a range (i.e. Result = MyFunc(1,98,A1:A2, B1:B2)) it works fine. However, when I try to directly use an array constant instead of a range (i.e. Result = MyFunc(1,98,{10,11}, {20,30}), it returns a #VALUE error.

I thought I could fix it by redefining the last two arguments as arrays of type double, but this didn't work either (i.e. Function MyFunc(Indx As Integer, k As Long, Rho() As Double, A() As Double) As Variant .... End Function ).

View 3 Replies View Related

User Defined Function In Array Formula

Jun 18, 2007

I have dates & times in column A1:A20. In B1:B20 I have the corresponding temperatures for each date. I have set up the following dynamic ranges to refer to these ranges.

DateRange refers to A1:A20
TempRange refers to B1:B20

I have also made a user defined function that will determine if a date/time is between two times. Eg., If 21/05/06 07:30 is between "07:00" and "17:00". This function isn't concerned with the date, just if the time falls between the start and end times.

Function BetweenTimes(dDate As String, dStartTime As String, dEndTime As String) As Boolean

dDate = CDate(dDate)
dStartTime = CDate(dStartTime)
dEndTime = CDate(dEndTime)

BetweenTimes = False

'If the end time is before the start time, see if date/time falls between start and end..........

View 9 Replies View Related

User-Defined Data Types

Apr 12, 2009

My question is about creating User-Defined Data Types. Is there ANY way possible i can create a User-Defined Data Type that declares a variable of another User-Defined Data Type instead of the Pre-Defined User Types like String, Integer, etc?

The following explains my problem in more detail.

I know to create a User-Defined Data Type at the top of the module before any procedures. Like this:

View 6 Replies View Related

Multidimensional Arrays And User Defined Types

Oct 11, 2006

I have written a user type for my arrays but I am having trouble storing it. The number of arrays varies.

Dim arrTransactions() As Transaction
Dim assortedrowindex As Integer

For assortedrowindex = 2 To 100

Redim Preserve arrTransactions(0)

arrTransactions(0).CUSIP = Cells(assortedrowindex, 12)
arrTransactions(0).OrderDate = Cells(assortedrowindex, 9)
arrTransactions(0).BuyCurncy = Cells(assortedrownindex, 2)
arrTransactions(0).SelCuurncy = Cells(assortedrowindex, 10)
arrTransactions(0).Fund = Cells(assortedrowindex, 7)
arrTransactions(0).SettleDate = Cells(assortedrowindex, 10)
arrTransactions(0).BuyUnits = Cells(assortedtrowindex, 15)
arrTransactions(0).FxRate = Cells(assortedrowindex, 16)

View 3 Replies View Related

VBA Find Partial String In Array And Output Found String Array Value?

Mar 31, 2014

I am trying to do a sort of index match thing using VBA. What I am attempting to do is to use the prefix of a long number and try to find that exact prefix in a string array, and output that string array value. So this is what I have so far as a test:


So I can match the text exactly so if I put PREFIXB in cell A1 in this example, i will get the msg box saying "YES", but if I make it PREFIXB1231k4j3jj1kj32cj, it will display "NO". I want to get it so that PREFIXB will be displayed in the cell that I put the formula in. So if A1 = "PREFIX1AAA100CF" and cell B1 = "=ABC(A1)", cell B1 will display "PREFIX1AAA".

Now the thing is that these prefixes can have different lengths, but will never encompass the exact prefix of another. So if I had a prefix of: PRE1AB, I won't have a prefix of PRE1A.

View 2 Replies View Related

Treating String As Array And Correct Array Format For Unicode Characters?

Jul 30, 2012

in C a string is nothing more than an Array of characters ending with a null character.

in VBA this does not seem to be the case.I am trying to use the BlowFish code from David Midkiff for some encryption, however the code sometimes fails:

When encrypting a string a string of a specific length should be returned. however sometimes one of the characters of the encrypted string is a null character, and the returned encrypted string (with a embedded null character) is causing me problems. I want to check for the null character and if present redo the encryption. But how do I check for the presence of this null character in a unicode (double-byte) string?

Checking with Len(encrypted) gives the correct length (!) but trying to move each (unicode)character into an array fails when using the Mid() function past the null character in the string.

Now I can use

byteArray() = StrConv(unicodetext,vbFromUnicode)

to get the lower byte of each character into an array easily, but how do I do this for both bytes of the unicode characters?

Using an integer array does not work other than through

intArray(j) = CInt(AscW(Mid(Outp, j, 1)))

which fails on the nullstring in my encrypted text.

I have tried with variants but so far no luck. I thought if the string was entered into a variant then I could also address the variant as an array of bytes, but that does not seem to be accepted by VBA.

View 1 Replies View Related

Search Substring Of Array Matching List Of String From Another Array?

Dec 20, 2013

I need to export this to Xcelsius which doesn't support any macros/vba. Btw I can;'t use Row() in xcelsius too.


View 4 Replies View Related

Set Array Of Types Equal To A Set Of Cells In Excel

Apr 9, 2014

I'm trying to set an array of types equal to a set of cells in excel, first I've defined an ORoom with attributes such as ( ORID, ORName,...), then ORooms whish is a set of ORs, from OR1 to OR 30.

Now I want to put ORooms equal to the whole range for them containing all information for all ORs, I'm trying this code:

Public Type ORoom
ORID As Integer
ORName As String
Cases As Integer

[Code] ........

But it gives me the error Invalid outside Procedure, referring to "A2:A31", I've checked but that the correct range for it.

View 4 Replies View Related

Copy Entire Excel Sheet Cells Values Into String Array?

Mar 3, 2014

How to copy the content of cells from an excell->sheet1 to an string array

View 2 Replies View Related

Comparing A String To Values In An Array Resulting In A Run Time Error 1004

Jul 15, 2009

This workbook is designed to prompt the user with inputboxes allowing them to enter a name, hyperlink a file to that name, and then a date. Next all the drawing names are read into an array and stored. Along with some minor sheet formatting, this is what happens when the button "Add Drawing" is clicked.

Next, when the button "Revise Drawing" is clicked, the user will be prompted with an inputbox for a drawing name. This name will be compared to the names in the array. If the name is found, the row containing that drawing will selected and the user will be prompted to update the hyperlink, then the "drawing date" will be moved to the right by one column, then the user will be prompted for another date replacing the date that was moved. The first sequence of commands or button works fine. The button "Revise Drawing" prompts the user with the inputbox requesting the revised drawing name, then develops the runtime error 1004.

View 3 Replies View Related

What Is The 90th Percentile Of The Defined Array Abc

Jan 31, 2014

I have a table with a set of duplicate values like given in the sample table below;


i need to derive the percentile value of one particular text in another sheet. i.e

i want to get- what is the 90th percentile of the defined array abc

if i use the formula percentile(vlookup(abc,table1,2),90%), the cell is referring only to the first value. i want the entire range to be referred.

View 1 Replies View Related

How To Match Array Values To Other Array Values

Oct 22, 2013

Question contained within code:

Dim MyArray(6, 1) As String
Dim i As Integer
'' Array List 1


'If lbxLI = any list index from Array List 1 then use the value stored in Array List 2 to give Listbox 2 its rowsource.
'For example; ListIndex "0" would produce a row source "_0" for listbox 2. Else if ListIndex "1" is selected, produce row source "_1" for listbox 2.

' I would like to achieve this from one "If" statement. I'm guessing it must be possible using a loop, I just can't think how despite a lot of messing about with code.

View 1 Replies View Related

Occurrence Selector - User Filling Array

Jun 11, 2013

I am trying to make an "Occurrence Selector" for our documents, because we want to import some data from HTML files we recieve and fill in a CSV Template. The problem is, the HTML files we receive contains a lot of information, and about half of the information is usefull for us. Therefor we want to select some occurrences and not all of them.

All i want is the user to input the occurrence number in the inputbox, and then the macro simply search for "Occurrence #(firstinput)",does its job, then "Occurrence #(secondinput)",does its job again, and so on until all of the required occurences have been transplanted into the CSV file.

This is what i currently have

Dim jobtodo As Variant

Set jobtodo = Application.InputBox(Prompt:="Type in each occurences that need to be inserted in the upcomming CSV file. Please seperate them all with a COMMA (,) between them.", Title:="Occurence Selector", Default:="1,2,3,4,...", Left:=150, Top:=150, Type:=64)
MsgBox (jobtodo)

Type is 64 because i want an Array, (i guess?)

When i input anything, i get an error message stating my formula has an error.

View 2 Replies View Related

How To Use VBA Array To Combine User Input Form

Jun 19, 2013

I have a form created using the instructions here [URL] ..... however I only have two boxes that I need completing. What I need to do is combine both inputs from the form into one cell. The code below shows this working but I am unable to get the array to work.

Essentially I need to get the array to drop in the old number and new number into the new cell so it looks something like this:

Old Number - 1234
New Number - 6543
Value in cell 1234 6543

The code I am using is set out below:


Private Sub submitmeterswap_Click()
Dim iRow As Long
Dim ws As Worksheet
Dim myarray As Variant
Set ws = Worksheets("x")


View 4 Replies View Related

Array To Check User Input Match

Feb 22, 2007

This is what i want to do: SEE ATTACHEMENT

•Write codes to pop up an InputBox to ask the user for a customer name.

•The program uses the user’s input to check whether the name is on the list. If it is, display an msgbox saying that the customer name is on the list, and the corresponding cell will be indicated in boldface and in blue. Otherwise, an msgbox will be displayed saying that the customer name is not on the list.

Dim the customer list as an array (string var. type) and Dim Found as Boolean. You will need the If-Then construction and For-Next or Do-While/Until loop too). Create a button to run and another to restore the formatting to its original style.

This is what i did so far and still having problems with it:

Option Explicit

Sub customers()

Dim Arr()
Dim R As Integer
Dim C As Integer
Dim ReturnColumn As Boolean

View 6 Replies View Related

Finding String In Array

Aug 8, 2013

I have list of strings to be searched in column A2 to A150 (A1 has column title). The array that needs to be searched is in B2 to AG1000 (B1 to AG1 has column title). I want each string in column A to be searched in the full array. If match is found the corresponding column title (B1 or C1 and so.) and cell address needs to written to a new result columns in AY and AZ. it should work for duplicates as well i.e. the string can be in all the columns of array from B to AG. and all of them needs to be written to result column.

View 9 Replies View Related

If String Equals Value In Array?

Sep 26, 2013

I'm trying to verify if a cellvalue is available in an array. Here is the code:

First I tried to check if the cellval is in the array by returning a -1, 0 or 1:

If UBound(txt, cellval) = 0 Then
-> returns zero for value "h3", but also for value "3"
(where cellval the value in the cell is)
(with txt being the array containing "h3,r8,ty657", etc)

But I need only the If to be true when there is an exact match.

View 2 Replies View Related

Array As String And Integer Together

Sep 19, 2007

I have defined array say like this:
Dim myarray (1 to 5, 1 to 2)

Is possible to define something like this?
myarray (x, 1) as string
myarray (x, 2) as integer

x is anything between 1 to 5 .

View 9 Replies View Related

Split String Into Array

Sep 20, 2008

Say I have a string, "a test array." I want to split this into an array where each character is an element. I was thinking something like

Dim MyArray As Variant
Dim MyString As String
MyString = "a test array"
MyArray = Split(MyString, "", Len(MyString), vbTextCompare)

But this doesn't work because Split() returns the entire string when the delimiter is a zero-length string.

View 9 Replies View Related

Passing Array Of UDT With String To C++ Dll

Feb 17, 2009

I'm trying to pass an array of UDT from Excel to a C++ dll but I have no idea how. My UDT looks like this

Private Type Student
Age As Integer
Name As String
StudentID As String
End Type
And my dll function declaration..

Declare Function RegisterStudent Lib "SimpleDLL.dll" _
(arr() as Student) As String
.. which will return a unique Id in string

View 9 Replies View Related

Sort String Array

Nov 18, 2006

I have a string (PreString) that gets its values from a procedure call (PreResult). The string consists of 4 values for each loop which I then split into the y array.

I then want to transpose the array to the worksheet for sorting.

I don't really get the transpose to work as I want to. I want every 4:th y to be printed on a new row (x). I don't really know how to use the Ubound function to get it right.

Should I make a 2 dimensional array instead ? If so, how is that made ?

Dim x As Integer, z As Integer
Dim var_Status As Integer
Dim var_Week As String
Dim var_HoursPerWeek As Integer
Dim PreString As String

i = var_StartWeekNr
j = var_RangeNumberOfWeeks
z = 0
x = 0
var_Status = 0
var_Week = ""
var_HoursPerWeek = 0
PreString = ""

View 8 Replies View Related

Find Value In Array Based On Partial Input From User

Feb 22, 2013

I am trying to find a value in an array based on partial input from a user.

The user will enter the last four digits of a number.

Then the formula should find the number in a list and return that complete number

I will explain using example.

Here is the list of numbers (array):


User input= 3233

formula output = 3003283233

View 3 Replies View Related

Extract Data From A String Array And Sum

Nov 9, 2009

I want to extract data from array string and then sum the values. For reference attaching the excel.

View 14 Replies View Related

Split String In Collection Into 2D Array

Jul 30, 2013

I set out this morning to count duplicates in an array and report a succinct list.... so I went down the route of using a collection with keys to do this.

1. Is there a better way? Else
2. split my collection values? I'm a bit stuck.

I have a series of values in a collection like this

: Item 2 : "Spam|01/07/2013|1" : Variant/String
: Item 4 : "Chips|01/07/2013|2" : Variant/String

So I have 3 key pieces of data delimited by a pipe sign -

Product | Date | Number of Occurrences

Item 4 is of interest to me because it occurs twice.

How I can turn those collection values into something I can work with, else another approach to sum rows in an array which are duplicates (if you only look at 2 columns).

View 6 Replies View Related

Excel VBA - Check If String Is In Array?

Sep 2, 2013

I have a test to see if a text string is in an array that mostly works, but sometimes fails and I don't understand why.

The routine calls a Function IsInArray which returns a True/False value depending on whether the search term is in the array.

Sub TestFilterArray()
MyArray = Array("a", "b", "c")
If IsInArray("a", MyArray) = False Then


In this case the first item in my array is "a - b" (note that this is a text string ), but for some reason because my test value is "a" the routine things it must be in the array.

Thus I am thinking that the ampersand and dash symbols are somehow confusing my routine.

How can I change my routine so that it correctly identifies which text strings are in my array?

View 9 Replies View Related

Converting String To Byte Array

Apr 18, 2007

I have a function that will be used across 10K+ records at a time, so I was taking a look at optimizing it a bit. At the start of the routing I have a string with a 9 to 15 digit numeric value in it. I wanted to load each individual digit into a byte array. I started out using:

byVal = StrConv(sVal,vbFromUnicode)
But that actually loads the ASCII Character codes into the array not the digits themselves. From there I considered looping through the array applying CByte(Chr$(byVal(i))) but then I wondered if it would make more sense to just load the array with Mid$(sVal,i,1)... Does anyone have tested knowledge on which performs better? Is there an option C I have missed?

View 9 Replies View Related

VBA Sort String Array Function

Oct 1, 2008

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
'-- remove leading and trailing spaces....................

View 9 Replies View Related

Array Formula Referencing A String

Mar 11, 2009

I'm having a problem with the below array. The column heading in cells E7:H7 Never change and i would like to sum up the appropriate data below those headings according to the what is in cell D4. The formula in cell A9 works but only if the string is exactly the same as what is listed in cell D4. Is there a way to reference cell D4 like i have in cell B9. I'm looking to get the formula in B9 to work, but i'm missing something.


ABCDEFGH2Assumptions 3Collateral Sample 1{60;90;FCL} MACRO Populates 4Collateral Sample 2{90;FCL} {60;90;FCL} 5Collateral Sample 3{FCL} 6Collateral Sample 4{60;90;FCL} 7 Current6090FCL8 990 123410200 658711360 4682212
Spreadsheet FormulasCellFormulaA9{=SUM(IF($E$7:$H$7={60;90;"FCL"},$E9:$H9))}B9{=SUM(IF($E$7:$H$7=$D$4,$E9:$H9))}A10{=SUM(IF($E$7:$H$7={60;90;"FCL"},$E10:$H10))}B10{=SUM(IF($E$7:$H$7=$D$4,$E10:$H10))}A11{=SUM(IF($E$7:$H$7={60;90;"FCL"},$E11:$H11))}B11{=SUM(IF($E$7:$H$7=$D$4,$E11:$H11))}Formula Array:
Produce enclosing { } by entering
formula with CTRL+SHIFT+ENTER!

Excel tables to the web >>" target="_blank"> Excel Jeanie HTML 4

View 9 Replies View Related

Declare String As Array Index

Mar 28, 2007

is it possible to declare an array or anyother datatype like the following in VBA?

Dim myArray() As Integer
myArray("A") = 0
myArray("Test") = 0
myArray("G") = 0

after checking some conditions i need to change the corresponding values too, like the following,

If mycondition = True Then
myArray("Test") = 1
End If

View 9 Replies View Related

Copyrights 2005-15, All rights reserved