När jag kör följande kod från funktionen så får jag errorn "function call on left-hand side of assigment must return Variant or Object": Här kommer hela funktionen: Hej Frans Japps, jag vet vad jag har gjort för fel. Det som är ett funktionsanrop(på vänstersida av likhetstecknet) var mitt försök på att tilldela ett värde till funktionen :) I alla fall, jag vet hur man gör nu. Jag hoppas inte att du lyckats tilldela ett värde till en funktion för dåJag har en funktion som returnerar en strän-array
CleanCommandLine(I - 1) = Mid(CmdLine, OldPos + 1, NewPos - (OldPos + 1))
Om jag har förstått det rätt så försöker den anropa funktionen igen istället för att tilldela den värdet. Hur löser jag detta?
mvh FransSv: Jag har en funktion som returnerar en strän-array
<code>
Public Function CleanCommandLine(CmdLine As String, Optional Separator As String = "-") As String()
'On Local Error GoTo Err:
Dim OldPos As Integer
Dim NewPos As Integer
Dim NumOfEnt As Integer
Dim I As Integer
ReDim CleanCommandLine(0)
OldPos = 1
For I = 1 To Len(CmdLine)
If Mid(CmdLine, I, 1) = Separator Then
NumOfEnt = NumOfEnt + 1
End If
Next
ReDim CleanCommandLine(NumOfEnt)
For I = 1 To NumOfEnt
OldPos = InStr(OldPos, CmdLine, Separator, vbTextCompare)
NewPos = InStr(OldPos + 1, CmdLine, Separator, vbTextCompare)
If NewPos = 0 Then
Debug.Print Trim(Mid(CmdLine, OldPos + 1, Len(CmdLine)))
Else
Debug.Print Mid(CmdLine, OldPos + 1, NewPos - (OldPos + 1))
CleanCommandLine(I - 1) = Trim(Mid(CmdLine, OldPos + 1, NewPos - (OldPos + 1)))
End If
OldPos = NewPos
Next I
Err:
Exit Function
RaiseEvent Error(Err.Number)
End Function
</code>Sv: Jag har en funktion som returnerar en strän-array
Du får inte ha ett funktionsanrop på vänster sida om ett likhetstecken!
NettanSv: Jag har en funktion som returnerar en strän-array
mvh FransSv: Jag har en funktion som returnerar en strän-array
skall jag äta upp min hatt.
/peterh