Passing a string aray as an argument to a function ?....Help!
Thanks Jim and Niek changing the array declarations worked!
Multi Declarations on a single line.
So would This Declaration only assign string type to "Z" then ?
Dim X, Y, Z As String
Dan.
"Jim Thomlinson" wrote:
A couple of problems...
One your declaration does not work. Try this
Private Oil(18) As String
Private Gas(18) As String
Private HO(18) As String
The other problem (not that it will keep the project from compiling) is that
your functions should be changed to sub procedures. A function returns a
value. Your functions do not return values.
"Niek Otten" wrote:
Hi Dan,
Don't know much about this. What I do know, however, is that the "As String"
declaration only works for the last defined name. So you should use
Dim Oil(18) As String, Gas(18) As String, HO(18) As String
--
Kind Regards,
Niek Otten
Microsoft MVP - Excel
"Dan Thompson" wrote in message
...
I am trying to pass a string array as an argument for a function, but I
keep
getting this compile error,
Type mismatch: array or user-defined type expected
Here is my code, why won't this work ?
Option Explicit
Option Base 1
Dim Oil(18), Gas(18), HO(18) As String
Sub SetChrtPosAndColor()
GetChartNumsFromTxtFile
WriteChartNums2txtFile Oil
End Sub
Function GetChartNumsFromTxtFile()
Dim X As Integer
Open "C:\ChrtNumLst.txt" For Input As #1
For X = 1 To 54
If X < 19 Then
Line Input #1, Oil(X)
ElseIf X 18 And X < 37 Then
Line Input #1, Gas(X - 18)
ElseIf X 36 Then
Line Input #1, HO(X - 36)
End If
Next X
Close #1
End Function
Function WriteChartNums2txtFile(Commodity() As String)
Dim X As Integer
Open "C:\WriteChtNum.txt" For Output As #1
For X = 1 To 18
Print #1, Commodity(X)
Next X
Close #1
End Function
Dan Thompson.
|