ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   array structure (https://www.excelbanter.com/excel-programming/392424-array-structure.html)

[email protected]

array structure
 
Does anyone know what is the datatype of an array of strings in Excel?

for an array of doubles it is usually a FPARRAY structure

typedef struct FPARRAY{
unsigned short iRows,
iCols;
double dArray[FPARRAY_SIZE];
} FPARRAY;


What is the data structure for an array of Strings?


Thanks


joel

array structure
 
C language and Basic do no store strings in the same manner. Because in
Basic you can insert characters in the middle of string the STRING data type
is not continous.

The characters in strings are bytes. You can use the ASC function to get
the value of the string characters and move them into an arrary something
like the following

Dim packstring
Dim PackArray(100) as byte

for stringcount = 1 to len(MyString)

PackArray(stringcount) = Asc(mid(MyString,stringcount,1))

next stringcount

I think ther maybe a Basic statement to do this automatically. It beens
years since I've had this problem.
" wrote:

Does anyone know what is the datatype of an array of strings in Excel?

for an array of doubles it is usually a FPARRAY structure

typedef struct FPARRAY{
unsigned short iRows,
iCols;
double dArray[FPARRAY_SIZE];
} FPARRAY;


What is the data structure for an array of Strings?


Thanks



Rick Rothstein \(MVP - VB\)

array structure
 
C language and Basic do no store strings in the same manner. Because in
Basic you can insert characters in the middle of string the STRING data
type
is not continous.

The characters in strings are bytes. You can use the ASC function to get
the value of the string characters and move them into an arrary something
like the following

Dim packstring
Dim PackArray(100) as byte

for stringcount = 1 to len(MyString)

PackArray(stringcount) = Asc(mid(MyString,stringcount,1))

next stringcount

I think ther maybe a Basic statement to do this automatically.


If you are willing to start your Byte array with a lower bound of zero, then
yes, there is...

Dim PackString As String
Dim PackArray() As Byte
PackString = "Whatever text you would like"
PackString = StrConv(PackString, vbFromUnicode)

Rick



All times are GMT +1. The time now is 01:24 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com