Доброго времени суток!
Можете помочь в написании макроса
В моем макросе я дал переменные к двум файлам.
Private sh_ассигнование As Workbook
Private sh_погашение As Workbook
Формула = *=СУММЕСЛИМН('[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!$Y:$Y;'[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!$R:$R;"ПОТРЕБЦЕЛИ";'[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!$AB:$AB;1)*
Нужно сделать формулу динамическим в макросе чтобы он взял данные с файла, который мы открываем через путь
Можете помочь в написании макроса
В моем макросе я дал переменные к двум файлам.
Private sh_ассигнование As Workbook
Private sh_погашение As Workbook
Код |
---|
Private sh_ассигнование As Workbook Private sh_погашение As Workbook Private end1 As Long Sub NPL_ФЛ_Рестр() 'Main макрос Call обзор_файла1 'Открывает окно где нужно выбрать файл 1 Call обзор_файла2 'Открывает окно где нужно выбрать файл 2 Call copypaste End Sub Private Sub обзор_файла1() result = Application.GetOpenFilename(MyFilter, , "Открой Ассигнование по резервам", "открой") If result = "False" Then Kill_all = True Exit Sub End If Workbooks.Open Filename:=result, ReadOnly:=1 Set sh_ассигнование = Workbooks(Dir(result)) 'Тут дал переменный на workbook 1 End Sub Private Sub обзор_файла2() result = Application.GetOpenFilename(MyFilter, , "Открой КП по NPL.Погашение", "открой") If result = "False" Then Kill_all = True Exit Sub End If Workbooks.Open Filename:=result, ReadOnly:=1 Set sh_погашение = Workbooks(Dir(result)) 'Тут дал переменный на workbook 2 ' Скрывает все действия записи макроса Application.Wait Now + TimeValue("00:00:01") Application.ScreenUpdating = False End Sub 'Тут только часть кода написал сюда, так как важен только формула в макросе 'Вставляем суммы наших пулов из листа "Страница1_1" в Ассигнование по резервам 'Формулы статистические, нужно сделать динамический, связать формулу как то с (sh_ассигнование As Workbook), (sh_погашение As Workbook) sh_погашение.Sheets("КП по NPL ФЛ").Range("I8").FormulaR1C1 = "=SUMIFS('[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C25,'[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C18,""ПОТРЕБЦЕЛИ"",'[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C28,0)" sh_погашение.Sheets("КП по NPL ФЛ").Range("I15").FormulaR1C1 = "=SUMIFS('[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C25,'[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C18,""АВТОКРЕДИТ"",'[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C28,0)" sh_погашение.Sheets("КП по NPL ФЛ").Range("I22").FormulaR1C1 = "=SUMIFS('[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C25,'[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C18,""ИПОТЕКА"",'[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C28,0)" sh_погашение.Sheets("КП по NPL ФЛ").Range("I29").FormulaR1C1 = "=SUMIFS('[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C25,'[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C18,""БЕЗЗАЛОГОВЫЕ"",'[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C28,0)" sh_погашение.Sheets("КП по NPL ФЛ").Range("I36").FormulaR1C1 = "=SUMIFS('[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C25,'[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C18,""БЫСТРДЕН"",'[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C28,0)" sh_погашение.Sheets("КП по NPL ФЛ").Range("I43").FormulaR1C1 = "=SUMIFS('[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C25,'[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C18,""КРЕДИТНЫЕКАРТЫ"",'[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C28,0)" sh_погашение.Sheets("КП по NPL ФЛ").Range("I50").FormulaR1C1 = "=SUMIFS('[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C25,'[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C18,""КРЕДИТЫКИК"",'[Ассигнования по резервам (01.09.2019 - 23.09.2019).xlsx]Страница1_1'!C28,0)" |
Нужно сделать формулу динамическим в макросе чтобы он взял данные с файла, который мы открываем через путь