0

こんにちは、デスクトップで任意の Excel ファイルを開くことができます。しかし、共有パスにあるExcelを開くことができません。ファイルが見つからないというエラー メッセージが表示される 助けが必要です...!!! パスは 2 つのバックスラッシュ「\..\.....\」で始まります

Sub open_hari()
    Dim r As Long
    For r = 1 To 10
        If Cells(r, 1).Value <> "" Then
            Workbooks.Open Filename:=Sheet1.Cells(r, 1).Value
        End If
    Next r
End Sub
4

1 に答える 1

0

\\myshare\etc\file.xlsxVBA からフォームのファイルを開くのに問題はありませんでした。だから私はあなたのコードを実行しようとしましたが、空でないセルが見つかるまではうまくいきました...しかし、ファイルを見つけて開くと、コードは自動的に新しいワークブックのセルを探し始めました(私は行 6 にファイル名があり、そのファイルが開かれ、コードは新しく開かれたファイルの行 7 を調べました。これには有効なファイル名がありませんでした)。

それが問題の原因である場合、解決策は、スクロールを開始する前に範囲を設定することです...:

Sub open_hari()
    Dim myCells
    Dim c
    Set myCells = Range(Sheet1.[A1], Sheet1.[A10]).Cells
    For Each c In myCells
        If c.Value <> "" Then
            Workbooks.Open Filename:=c.Value
        End If
    Next c
End Sub

これで問題は解決しました...

ちなみに、行を追加できます

On Error Resume Next

直前に

Workbooks.Open

声明。そうすれば、セルに無効なファイル名が含まれている (ただし空ではない) 場合でも、コードはそのまま続行されます。これでは、コードに問題があることを理解するのに役立ちません。そのため、通常は、完全にデバッグされるまで実行しないことをお勧めします。エラー トラップを有効にしていれば、別のシートを見るというこの問題は完全に見えなくなります。

于 2013-04-05T12:47:21.237 に答える