Доброго времени суток!
Можете помочь в написании макроса
В моем макросе я дал переменные к двум файлам.
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)"
|
Нужно сделать формулу динамическим в макросе чтобы он взял данные с файла, который мы открываем через путь