Проблема такая: макрос начал указывать не верную информацию в столбце 28 на листе "Проплаты" - вместо нужно информации заносит в ячейку такое сообщение: =T(IFERROR(VLOOKUP(--MID(RC[-24],2,SEARCH("_",RC[-24])-2),Отгрузка!R2C5:R23880C40,36,0),""))
Просьба помочь найти ошибку или подсказать как отключить занесение данной информации в таблицу (как временное решение поможет)
Код макроса ниже:
Просьба помочь найти ошибку или подсказать как отключить занесение данной информации в таблицу (как временное решение поможет)
Код макроса ниже:
Код |
---|
Option Explicit Sub ПреобразованиеДеловые() Dim lrow, mdel_date, motgr_date With Sheets("Деловые") lrow = .Cells(.Rows.Count, 4).End(xlUp).Row '16 .Range(.Cells(2, 16), .Cells(lrow, 16)).FormulaR1C1 = "=DATEVALUE(MID(RC[-14],1,10))" .Range(.Cells(2, 16), .Cells(lrow, 16)).Value = .Range(.Cells(2, 16), .Cells(lrow, 16)).Value '17 .Range(.Cells(2, 17), .Cells(lrow, 17)).FormulaR1C1 = "=VALUE(RC[-8])" .Range(.Cells(2, 17), .Cells(lrow, 17)).Value = .Range(.Cells(2, 17), .Cells(lrow, 17)).Value End With mdel_date = WorksheetFunction.Max(Sheets("Деловые").Columns(16)) motgr_date = WorksheetFunction.Max(Sheets("Отгрузка").Columns(32)) If mdel_date > motgr_date Then MsgBox "Добавьте данные во вкладку Отгрузка" Exit Sub End If If mdel_date < motgr_date Then MsgBox "Добавьте данные во вкладку Деловые" Exit Sub End If With Sheets("Проплаты") lrow = .Cells(.Rows.Count, 4).End(xlUp).Row '22 .Range(.Cells(2, 22), .Cells(lrow, 22)).FormulaR1C1 = _ "=IF(ISNA(LOOKUP(2,1/((Деловые!R2C17:R27319C17=RC[-1])*(Деловые!R2C16:R27319C16=RC[-15])),Деловые!R2C4:R27319C4)),"""",LOOKUP(2,1/((Деловые!R2C17:R27319C17=RC[-1])*(Деловые!R2C16:R27319C16=RC[-15])),Деловые!R2C4:R27319C4))" .Range(.Cells(2, 22), .Cells(lrow, 22)).Value = .Range(.Cells(2, 22), .Cells(lrow, 22)).Value '23 .Range(.Cells(2, 23), .Cells(lrow, 23)).FormulaR1C1 = _ "=IF(ISNA(INDEX(Деловые!R2C14:Деловые!R21175C14,MATCH(RC[-1],Деловые!R2C4:Деловые!R21175C4,0),1)),"""",INDEX(Деловые!R2C14:Деловые!R21175C14,MATCH(RC[-1],Деловые!R2C4:Деловые!R21175C4,0),1))" .Range(.Cells(2, 23), .Cells(lrow, 23)).Value = .Range(.Cells(2, 23), .Cells(lrow, 23)).Value '24 .Range(.Cells(2, 24), .Cells(lrow, 24)).FormulaR1C1 = _ "=IF(ISNA(INDEX(Деловые!R2C12:Деловые!R21175C12,MATCH(RC[-2],Деловые!R2C4:Деловые!R21175C4,0),1)),"""",INDEX(Деловые!R2C12:Деловые!R21175C12,MATCH(RC[-2],Деловые!R2C4:Деловые!R21175C4,0),1))" .Range(.Cells(2, 24), .Cells(lrow, 24)).Value = .Range(.Cells(2, 24), .Cells(lrow, 24)).Value '25 .Range(.Cells(2, 25), .Cells(lrow, 25)).FormulaR1C1 = _ "=IF(ISNA(INDEX(Деловые!R2C11:Деловые!R21175C11,MATCH(RC[-3],Деловые!R2C4:Деловые!R21175C4,0),1)),"""",INDEX(Деловые!R2C11:Деловые!R21175C11,MATCH(RC[-3],Деловые!R2C4:Деловые!R21175C4,0),1))" .Range(.Cells(2, 25), .Cells(lrow, 25)).Value = .Range(.Cells(2, 25), .Cells(lrow, 25)).Value '26 .Range(.Cells(2, 26), .Cells(lrow, 26)).FormulaR1C1 = "=--MID(RC[-22],2,FIND(""_"",RC[-22])-2)" .Range(.Cells(2, 26), .Cells(lrow, 26)).Value = .Range(.Cells(2, 26), .Cells(lrow, 26)).Value '27 .Range(.Cells(2, 27), .Cells(lrow, 27)).FormulaR1C1 = _ "=IF(ISNA(LOOKUP(2,1/((Отгрузка!R2C41:R28190C41=RC[3])*(Отгрузка!R2C5:R28190C5=RC[-1])),Отгрузка!R2C39:R28190C39)),"""",LOOKUP(2,1/((Отгрузка!R2C41:R28190C41=RC[3])*(Отгрузка!R2C5:R28190C5=RC[-1])),Отгрузка!R2C39:R28190C39))" .Range(.Cells(2, 27), .Cells(lrow, 27)).Value = .Range(.Cells(2, 27), .Cells(lrow, 27)).Value '28 - ВЕРОЯТНО ОШИБКА ЗДЕСЬ .Range(.Cells(2, 28), .Cells(lrow, 28)).FormulaR1C1 = _ "=T(IFERROR(VLOOKUP(--MID(RC[-24],2,SEARCH(""_"",RC[-24])-2),Отгрузка!R2C5:R23880C40,36,0),""""))" .Range(.Cells(2, 28), .Cells(lrow, 28)).Value = .Range(.Cells(2, 28), .Cells(lrow, 28)).Value '29 .Range(.Cells(2, 29), .Cells(lrow, 29)).FormulaR1C1 = _ "=IF(ISNA(INDEX(Отгрузка!R2C41:Отгрузка!R21890C41,MATCH(RC[-2],Отгрузка!R2C40:Отгрузка!R21890C39,0),1)),"""",INDEX(Отгрузка!R2C41:Отгрузка!R21890C41,MATCH(RC[-2],Отгрузка!R2C40:Отгрузка!R21890C39,0),1))" .Range(.Cells(2, 29), .Cells(lrow, 29)).Value = .Range(.Cells(2, 29), .Cells(lrow, 29)).Value End With End Sub |