Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 5
Default Class Modules

Hi!
In a class module I have declared a matrix ( name(120,120) as double), i
have a sub procedure that does som calculations, so that I have the
information I want to use for calculations stored in that matrix. In a
generall module procedures I want to have access to a column of this matrix,
but I haven't got a clue as how to get hold of it. Preferably I would like
to assign a double variable of length 120 the contents of a column of my
choice belonging to an instance of that class.
Since the variable is of type (120,120)double I can not access it in the
usual way by the syntax object.matrix(i,j). Also, is there a way of selecting
multiple indexes in a vector? In computer algebra software such as
Matlab,S-plus or R, I am used to be able to specify a particular range of
indexes , i.e matrix(1:90,120) where 1:90 is row 1 to 90, and 120 the 120th
column. Is there any way of doing such an opperation using VBA/Excel.
Any suggestion on how to solve my problem, or links to sites where I can
read up on these matters will be greatly apprectiated.

Stig
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1,726
Default Class Modules

I know of no built-in functionality to achieve it, but it should be
relatively simple to craft your own methods/properties to achieve this,
loading it into a new array and returning that.

--
---
HTH

Bob

(change the xxxx to gmail if mailing direct)


"STIG" wrote in message
...
Hi!
In a class module I have declared a matrix ( name(120,120) as double), i
have a sub procedure that does som calculations, so that I have the
information I want to use for calculations stored in that matrix. In a
generall module procedures I want to have access to a column of this
matrix,
but I haven't got a clue as how to get hold of it. Preferably I would
like
to assign a double variable of length 120 the contents of a column of my
choice belonging to an instance of that class.
Since the variable is of type (120,120)double I can not access it in the
usual way by the syntax object.matrix(i,j). Also, is there a way of
selecting
multiple indexes in a vector? In computer algebra software such as
Matlab,S-plus or R, I am used to be able to specify a particular range of
indexes , i.e matrix(1:90,120) where 1:90 is row 1 to 90, and 120 the
120th
column. Is there any way of doing such an opperation using VBA/Excel.
Any suggestion on how to solve my problem, or links to sites where I can
read up on these matters will be greatly apprectiated.

Stig



  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 947
Default Class Modules

In computer algebra software such as
Matlab,S-plus or R, I am used to be able to specify a particular range of
indexes , i.e matrix(1:90,120) where 1:90 is row 1 to 90, and 120 the
120th


Hi. Not sure if this could help or not.
You may be able to take an entire column, but it is hard to take parts of a
single array.
Here, V is made of "All" Rows of the second Column.
Then, Redim is used to shrink the array down to the first two values.
It won't work if the index doesn't start at 1.

Sub Demo()
Dim Fx As WorksheetFunction
Dim M(), V
Const All As Long = 0

Set Fx = WorksheetFunction
M = [{1,2,3;4,5,6;7,8,9}]
V = Fx.Transpose(Fx.Index(M, All, 2))
ReDim Preserve V(1)
End Sub


It's kind of similar to math programs...
M = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};

M[[All,2]]
{2, 5, 8}

Does making your Matrix a Public variable help?
--
HTH :)
Dana DeLouis
Windows XP & Office 2003


"STIG" wrote in message
...
Hi!
In a class module I have declared a matrix ( name(120,120) as double), i
have a sub procedure that does som calculations, so that I have the
information I want to use for calculations stored in that matrix. In a
generall module procedures I want to have access to a column of this
matrix,
but I haven't got a clue as how to get hold of it. Preferably I would
like
to assign a double variable of length 120 the contents of a column of my
choice belonging to an instance of that class.
Since the variable is of type (120,120)double I can not access it in the
usual way by the syntax object.matrix(i,j). Also, is there a way of
selecting
multiple indexes in a vector? In computer algebra software such as
Matlab,S-plus or R, I am used to be able to specify a particular range of
indexes , i.e matrix(1:90,120) where 1:90 is row 1 to 90, and 120 the
120th
column. Is there any way of doing such an opperation using VBA/Excel.
Any suggestion on how to solve my problem, or links to sites where I can
read up on these matters will be greatly apprectiated.

Stig



Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Class modules: parametrize class object fields Jean-Pierre Bidon Excel Programming 11 August 31st 06 02:49 PM
VBA Class Modules Drakey Excel Programming 1 August 28th 06 09:21 PM
Basic question - modules and class modules - what's the difference? Mark Stephens[_3_] Excel Programming 9 May 8th 05 11:48 AM
Class Modules ibeetb Excel Programming 1 January 5th 04 10:04 PM
Class Modules vs Modules Jeff Marshall Excel Programming 2 September 28th 03 07:57 PM


All times are GMT +1. The time now is 06:13 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"