У меня есть цикл, который активирует определенный файл и копирует данные; он не работает, и я не понимаю, почему. Пожалуйста, смотрите ниже:Оператор VBA «Like» и подстановочный знак
For Each w In Workbooks
If w.Name Like "*File 1*" Then
Windows(w.Name).Activate
Sheets("Test").Range("C7:C15").Copy
End If
Exit For
Next w
Подстановочный есть, потому что в реальности, каждую неделю имя файла изменится с «Файл 1 - week1» в «Файл 1 - week2», и так далее. Дело в том, что vode останавливается на аналогичной строке оператора, поэтому предполагая проблему с «Файл 1»?
Любая помощь очень ценится
выглядит отлично. Если 'w.Name' не существует. –
Если имя всегда «Файл 1 и т. Д.», то 'Like' должно быть' Like 'File 1 * "' удаление первого шаблона, иначе он ожидает что-то перед файлом 1 – DragonSamu
Что такое сообщение об ошибке при остановке кода? (И вы должны предусмотреть удаление всех '.Activate' и других' .Select' в вашем коде, они обычно больше смутьяны, что иная вещь, см. Здесь [http://stackoverflow.com/questions/10714251/how-to -avoid-using-select-in-excel-vba-macros)) –