コモンダイアログで複数のファイルを開く
このサイトでの質問No.222750
http://www.okweb.ne.jp/kotaeru.php3?q=222750
を読んで、コモンダイアログを使って複数のファイルパスを取得するプログラムを作りました。ところが実行するとある程度の数のファイルなら問題はないのですが多いと、
タイトル:「ファイルを開く」内容:「c:\(ここにパスが入ります)\ 上記のファイル名は無効です」という警告メッセージが出ます。
それらのファイルも数を加減して開けばメッセージは出ないので、ファイル名に問題があるとは思えません。
それぞれのファイル名が短いと、多くのファイルを選択できることから文字数に関係があると思うのですが、よく分かりません。
コードはNo.222750の#1の回答とほとんど同じです。但し使っているver5ではSplitが使えないためにプロシージャを使って以下のように書き換えました。ここに問題はないと思うのですがよろしくお願いします。
'Splitを用いている文の書き換え
Call SplitD(CommonDialog1.Filename, vbNullChar, valWork())
'
Private Sub SplitD(Filename As String, Serch As String, strData() As Variant)
Dim t As Integer
Dim s As Long '検索開始位置
Dim e As Long '検索文字位置
s = 1
Do
e = InStr(s, Filename, Serch)
If e = 0 Then: e = Len(Filename) + 1
ReDim Preserve strData(t)
strData(t) = Mid(Filename, s, e - s)
t = t + 1
s = e + 1
Loop Until e = Len(Filename) + 1
End Sub
お礼
申し訳ございません。 どうも、私の文章の調子が強かったようで、ご不快な思いをさせたようで、お詫びいたします。 また、ご意見下さい。