|
おはようございます。
>
>「引数を指定せずに再び dir関数を呼び出す」
>と御説明ありましたが
>
>「引数を指定せずに再び 〜関数を呼び出す」
>
>といったコードの例を他の関数でも知りたいのですが
>宜しくお願いします。
>つまり
>変数=関数("")の形について
>文法みたいなものがあるのでしょうか?
私もこのDir関数と同じインターフェースはよく使いますよ!!
例
プロシジャー名 diststr
機能 指定された文字列を分解して一文字毎に取り出す
呼び出し形式 diststr([mystr])
inpout mystr 分解して一文字毎とり出す元になる文字列
output diststr 一文字の文字
使用例
標準モジュールに
'=================================================================
Sub main()
Dim a As String
a = diststr("ichinose")
Do Until a = ""
MsgBox a
a = diststr()
Loop
End Sub
'====================================================================
Function diststr(Optional mystr As String = "") As String
Static svstr As String
Static svidx As Long
diststr = ""
If mystr <> "" Then
svstr = mystr
svidx = 1
End If
If svidx <= Len(svstr) Then
diststr = Mid(svstr, svidx, 1)
svidx = svidx + 1
End If
End Function
上記のコードのmainを実行すると入力データとして、指定された
「ichinose」が分解され、一文字ずつ表示されます。
この手のコードのポイントは、
引数にある Optinalキーワードと
コード内の Staticステートメントです。
試してみて下さい
|
|