プロが教える店舗&オフィスのセキュリティ対策術

Excel VBA エラー回避について
エクセルファイル検索時にエラーを回避する方法を教えてください
作成したコードでB3で指定したエクセルファイルを読み出しするさいにフォルダに対象がなければ検索対象がありませんと表示されプログラムが終了させたいのですがご教授願います
sub 検索_Click()
’原紙読み出し
型番=Range("B3").Value & ”.xlsx
Application.DisplayAlerts=False
Workbooks.Open Filename:="C:¥原紙  ¥" & 型番
Sheets("原紙").copy after:=Workbooks(ThisWorkbook.Name).sheets(1)

End Sub

質問者からの補足コメント

  • へこむわー

    教えていただいたコードですがそのまま
    コピー対応をするとFilenameの部分でコンパイルエラー(構文エラーとなります)エラー理由わかりますでしょうか

      補足日時:2018/05/08 20:28

A 回答 (3件)

こんにちは!



未検証ですが・・・

Sub Sample1()
Dim 型番 As String, fN As String
型番 = Range("B3") & ".xlsx"
fN = "C:¥原紙" & "\" & 型番
If Dir(fN) <> "" Then
Workbooks.Open (fN)
Sheets("原紙").copy after:=Workbooks(ThisWorkbook.Name).Sheets(1)
Else
MsgBox "該当ファイルなし"
End If
End Sub

ではどうなりますか?m(_ _)m
    • good
    • 0

補足コメントに対しての回答です。



実際にVBAをためしていませんが、
型番=Range("B3").Value & ”.xlsx

型番=Range("B3").Value & ”.xlsx"
ではないでしょうか。最後に"を忘れているように見えます。
    • good
    • 0

Option Explict


Sub 検索_Click()
Dim 型番 As String
 ’原紙読み出し
 型番=Range("B3").Value & ”.xlsx
 If Len(Dir("C:¥原紙  ¥" & 型番)) = 0 Then
  MsgBox "検索対象がありません"
 Else
  With Workbooks.Open Filename:="C:¥原紙  ¥" & 型番
   .Sheets("原紙").Copy After:=ThisWorkbook.Sheets(1)
   .Close False
  End With
 End If
End Sub
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!