0

このコードでcsvファイルを開こうとすると、「エラー52の不正なファイル名または番号」が表示され続けます

 Sub ShowFileDialog()
   Dim x As String
     Dim FF1 As Integer
    Dim dlgOpen As FileDialog
    Set dlgOpen = Application.FileDialog( _
        msoFileDialogFilePicker)
    With dlgOpen

        .Show
    End With

x = CStr(dlgOpen.SelectedItems(1))
MsgBox x

Open x For Input As #FF1

Do While Not EOF(FF1)

Line Input #FF1, inputdata

Dim lineData() As String
lineData() = Split(inputdata, ",")



Loop
Close #FF1
End Sub

デバッガーは Open for X 行を強調表示していますが、パス名を文字列として入力しています

4

1 に答える 1

1

エラーの原因となっている行の直前に次の行を追加します。

FF1 = FreeFile

Open For Input には 1 から 512 までの数値が必要なため、これはFreeFileの呼び出しで取得する必要があります。

于 2012-10-12T14:49:47.883 に答える