Здравствуйте, есть макрос, который запускает стандартную функцию в Excel: консолидация. Проблема состоит в том, что книгу, для которой создан макрос необходимо размножить для нескольких клиентов, но при изменении имени файла (сохранении под другим именем) , макрос продолжает ссылаться на исходник. Как заставить его работать с активным файлом?
"'F:\AD\ICMS\[Customer name first week-last week 2014.xlsm] - путь к исходному файлу, который необходимо заменить на активную книгу
DATA'!R5C7:R500C10 - название листа и диапазон откуда необходимо брать данные для консолидации (неизменен для всех клиентов)
Полный код ниже
[vba]
Код
Range("A1").Select Selection.Consolidate Sources:= _ "'F:\AD\ICMS\[Customer name first week-last week 2014.xlsm]DATA'!R5C7:R500C10" _ , Function:=xlSum, TopRow:=True, LeftColumn:=True, CreateLinks:=False Columns("A:D").Select Selection.AutoFilter Range("A2").Select End Sub
[/vba]
Заранее спасибо.
С уважением Константин
Здравствуйте, есть макрос, который запускает стандартную функцию в Excel: консолидация. Проблема состоит в том, что книгу, для которой создан макрос необходимо размножить для нескольких клиентов, но при изменении имени файла (сохранении под другим именем) , макрос продолжает ссылаться на исходник. Как заставить его работать с активным файлом?
"'F:\AD\ICMS\[Customer name first week-last week 2014.xlsm] - путь к исходному файлу, который необходимо заменить на активную книгу
DATA'!R5C7:R500C10 - название листа и диапазон откуда необходимо брать данные для консолидации (неизменен для всех клиентов)
Полный код ниже
[vba]
Код
Range("A1").Select Selection.Consolidate Sources:= _ "'F:\AD\ICMS\[Customer name first week-last week 2014.xlsm]DATA'!R5C7:R500C10" _ , Function:=xlSum, TopRow:=True, LeftColumn:=True, CreateLinks:=False Columns("A:D").Select Selection.AutoFilter Range("A2").Select End Sub
Не уверен, заменил путь и название листа на p="'" & ThisWorkbook.Path & "\[" & ThisWorkbook.Name & "]DATA'!R5C7:R500C10", выдало ошибку: Run-time error 1004 Неверная ссылка.
Но мог и заменить не правильно. Новую версию макроса выкладываю
[vba]
Код
Sub Consolidation_indirect() ' ' Consolidation_indirect Ìàêðîñ '
' Range("A1").Select Selection.Consolidate Sources:= _ p = "'" & ThisWorkbook.Path & "\[" & ThisWorkbook.Name & "]DATA'!R5C7:R500C10" _ , Function:=xlSum, TopRow:=True, LeftColumn:=True, CreateLinks:=False Columns("A:D").Select Selection.AutoFilter Range("A2").Select End Sub
[/vba] [moder]Пользуйтесь тегами оформления Кнопки: для формул - fx для макросов - #
Не уверен, заменил путь и название листа на p="'" & ThisWorkbook.Path & "\[" & ThisWorkbook.Name & "]DATA'!R5C7:R500C10", выдало ошибку: Run-time error 1004 Неверная ссылка.
Но мог и заменить не правильно. Новую версию макроса выкладываю
[vba]
Код
Sub Consolidation_indirect() ' ' Consolidation_indirect Ìàêðîñ '
' Range("A1").Select Selection.Consolidate Sources:= _ p = "'" & ThisWorkbook.Path & "\[" & ThisWorkbook.Name & "]DATA'!R5C7:R500C10" _ , Function:=xlSum, TopRow:=True, LeftColumn:=True, CreateLinks:=False Columns("A:D").Select Selection.AutoFilter Range("A2").Select End Sub
[/vba] [moder]Пользуйтесь тегами оформления Кнопки: для формул - fx для макросов - #KF