回答編集履歴

4 追記

sazi

sazi score 22541

2017/10/05 17:33  投稿

パスとファイルの区切りに"\"がありません。(Dir()への引数のパスなど)
以下のように変更してみて下さい。
```VBA
myFile = Dir(myPath & "\" & "*.xlsx")
Do Until myFile = ""
   'ブックを開いて処理を行い保存して閉じる
   Workbooks.Open myPath & "\" & myFile
```
因みに、「名前」はBook単位なので、```Sheets("Sheet1").Select```は不要ですね。
因みに、「名前」はBook単位なので、```Sheets("Sheet1").Select```は不要ですね。
追記
---
参考までに、Namesコレクションのようなコレクションの操作にはFor Eachを使用すると簡潔な記述になります。
```VBA
Sub macro1()
Dim myPath As String
Dim myFile As String
Dim nm As Name
myPath = ThisWorkbook.Path & "\"
'指定フォルダのブックを順繰り拾う
myFile = Dir(myPath & "*.xlsx")
Do Until myFile = ""
   'ブックを開いて処理を行い保存して閉じる
   Workbooks.Open myPath & myFile
   For Each nm In ActiveWorkbook.Names
       Select Case nm.Name
       Case "該当するワード1", "該当するワード2"
           nm.Delete
       End Select
   Next
   ActiveWorkbook.Close savechanges:=True
   myFile = Dir()
Loop
End Sub
```
「名前」の定義を全て削除したいなら、Select Case~による判定は不要ですし、削除したくないものを限定したいなら、CASE で削除したくないものを指定してelseで削除を行えば記述が少なくて済みます。
3 修正

sazi

sazi score 22541

2017/10/05 17:06  投稿

Dir()への引数のパスが正しくありません。
パスとファイルの区切りに"\"がありません。(Dir()への引数のパスなど)
以下のように変更してみて下さい。
```VBA
myFile = Dir(myPath & "\" & "*.xlsx")
Do Until myFile = ""
   'ブックを開いて処理を行い保存して閉じる
   Workbooks.Open myPath & "\" & myFile
```
因みに、「名前」はBook単位なので、```Sheets("Sheet1").Select```は不要ですね。
2 修正

sazi

sazi score 22541

2017/10/05 16:51  投稿

Dir()への引数のパスが正しくありません。
以下のように変更してみて下さい。
```VBA
myFile = Dir(myPath & "\" & "*.xlsx")
Do Until myFile = ""  
   'ブックを開いて処理を行い保存して閉じる  
   Workbooks.Open myPath & "\" & myFile  
```
因みに、「名前」はBook単位なので、```Sheets("Sheet1").Select```は不要ですね。
1 修正

sazi

sazi score 22541

2017/10/05 16:44  投稿

Dir()への引数のパスが正しくありません。
以下のように変更してみて下さい。
```VBA
myFile = Dir(myPath & "\" & "*.xls*")
myFile = Dir(myPath & "\" & "*.xlsx")
```
因みに、「名前」はBook単位なので、```Sheets("Sheet1").Select```は不要ですね。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る