2016-03-11 2 views
-1

Я знаю, что этот вопрос появился много раз, но каждый вопрос отличается, а другие темы не помогли мне решить мою проблему.Объект не поддерживает это свойство или метод - Excel Workbooks

Попытка закрыть файлы, которые уже были открыты с помощью других макросов:

Do While Cells(c, 1) <> "" 
     wb1 = Workbooks(Cells(c, 1) & " Daily " & Format(Date, "dd mmm yy") & ".xls") 
     wb2 = Workbooks(Cells(c, 1) & " .xls") 
     If wb1 <> "" And wb2 <> "" Then 
      'Windows(Cells(c, 1) & " Daily " & Format(Date, "dd mmm yy") & ".xls").Activate 
      wb1.Close Savechanges:=True 
      'Windows(Cells(c, 1) & " .xls").Activate 
      wb2.Close Savechanges:=True 
     End If 

    c = c + 1 
Loop 

клетки (С, 1) является столбец с именами клиентов.

Любая помощь будет оценена по достоинству.

+0

Какая ошибка? Я думаю, вам нужно проверить «не wb1 ничего» –

+0

ошибка во второй строке wb1 = ... Имя файла хорошо, потому что оно работает, когда я использую Windows (...). Acivate. Пробовал использовать только Windows (...). Закрыть SaveChanges: True, но error Object ... –

ответ

1

Workbooks коллекция возвращает Workbook объект. Если вы хотите присвоить ссылку на объект переменной, вам необходимо использовать Set:

Set wb1 = Workbooks(Cells(c, 1) & " Daily " & Format(Date, "dd mmm yy") & ".xls") 
Set wb2 = Workbooks(Cells(c, 1) & " .xls") 
+0

Это сработало. Благодаря! –

Смежные вопросы