- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Is it possible to pass a Microsoft Excel 2003VBA User Defined Data Type (UDT) which includes numeric arrays to Fortran with Intel Visual Fortran? I have been able to pass UDT without arrays without any problems but cannot figure out how to pass the structure defined below.
Here is the VBA UDT:
Public Type DataRecord3D
nrows As Long
nr_s As Long
nx1 As Long
x1() As DoubleRedim as 1D array
x1_sOrder As Long
nx2() As Long Redim as 1D array
min_nx2 As Long
max_nx2 As Long
x2() As DoubleRedim as 2D array
x2_sOrder As Long
nx3() As LongRedim as 2D array
min_nx3 As Long
max_nx3 As Long
x3() As Double Redim as 3D array
x3_sOrder As Long
ny As Long
y() As Double Redim as 4D array
isAllSquare As Boolean
isC1C2Square As Boolean
isC2C3Square As Boolean
End Type
nrows As Long
nr_s As Long
nx1 As Long
x1() As DoubleRedim as 1D array
x1_sOrder As Long
nx2() As Long Redim as 1D array
min_nx2 As Long
max_nx2 As Long
x2() As DoubleRedim as 2D array
x2_sOrder As Long
nx3() As LongRedim as 2D array
min_nx3 As Long
max_nx3 As Long
x3() As Double Redim as 3D array
x3_sOrder As Long
ny As Long
y() As Double Redim as 4D array
isAllSquare As Boolean
isC1C2Square As Boolean
isC2C3Square As Boolean
End Type
Link Copied
1 Reply
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I'd guess that the arrays are represented as SAFEARRAY descriptors. You can use the SAFEARRAY routines in module IFCOM to decode them.

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page