アスタリスクのワイルドカードのためにコードが特別に機能しなくなるようにExcelで突然変更されたものを突き止めようとしています。データファイル(.xlsと。xlsx)を以下に示すコードを含む空のファイルに結合するために、このコードをフロントエンドとして使用しました。これはうまく動作し、問題なく何度も使用されました。ファイル自体とコードは、数週間前にExcel 2016で実行されました。excel 2016 VBAアスタリスクワイルドカードが原因で1004アプリケーションが定義されているかオブジェクト定義エラー
実行時に"実行時エラー1004アプリケーション定義またはオブジェクト定義エラー"を受け取りましたが、なぜ私には手がかりがありません。私はすべての行にテキストをつけていたので、エラーの原因となっているのは ".xl"です。
".xl"を実際のファイル名で置き換えても問題はありませんでした。アスタリスクを使用すると突然このエラーが発生するのはなぜですか?
これまでに誰もがこれを実行しましたか?私は高低を検索して、まったく同じことを報告している誰かを見つけることができませんでした。ここで私が使ってきたものがありますが、もう一度、それは数週間はうまくいきました。
Sub MergeDataFiles()
Dim sPath As String
Dim MyFile As String
Dim wBk As Workbook
sPath = InputBox("Paste File Path Here")
MyFile = Dir(sPath & "\*.xl*")
Application.EnableEvents = False
Application.ScreenUpdating = False
Do While Len(MyFile) > 0
Set wBk = Workbooks.Open(sPath & MyFile)
wBk.Sheets(1).Copy After:=ThisWorkbook.Sheets(1)
wBk.Close True
MyFile = Dir()
Loop
ActiveWorkbook.Save
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
は 'SPATH&「\」&「* .xlの*」' – CallumDA
使用は 'セットを試しますwBk = Workbooks.Open(sPath& "\"&MyFile) ' – user3598756
' sPath'にバックスラッシュ文字が含まれていないことを確認しましたか? – JiheL