Уважаемые форумчане, прошу вашей помощи!
Есть макрос, работает, как простая последовательность действий. Ранее, когда исходный массив данных и область отображения были идентичны по структуре, то прописать все в одну строку труда не составляло. Но теперь в области отображения данные идут через колонку, а в исходном массиве остались в колонках подряд. Из-за этого в координатах появилось смещение на 1. Как это прописать в макросе с какой-то условной формулой "предыдущие координаты -1" не знаю.
Надеюсь на вашу помощь. Сам макрос ниже. В таком виде файл работает, но медленно. Заранее благодарю!
Есть макрос, работает, как простая последовательность действий. Ранее, когда исходный массив данных и область отображения были идентичны по структуре, то прописать все в одну строку труда не составляло. Но теперь в области отображения данные идут через колонку, а в исходном массиве остались в колонках подряд. Из-за этого в координатах появилось смещение на 1. Как это прописать в макросе с какой-то условной формулой "предыдущие координаты -1" не знаю.
Надеюсь на вашу помощь. Сам макрос ниже. В таком виде файл работает, но медленно. Заранее благодарю!
Код |
---|
Range("C4").FormulaR1C1 = "=LOOKUP(RC[48],RC[48])" Range("C4").AutoFill Destination:=Range("C4:C45"), Type:=xlFillDefault Range("E4").FormulaR1C1 = "=LOOKUP(RC[47],RC[47])" Range("E4").AutoFill Destination:=Range("E4:E45"), Type:=xlFillDefault Range("G4").FormulaR1C1 = "=LOOKUP(RC[46],RC[46])" Range("G4").AutoFill Destination:=Range("G4:G45"), Type:=xlFillDefault Range("I4").FormulaR1C1 = "=LOOKUP(RC[45],RC[45])" Range("I4").AutoFill Destination:=Range("I4:I45"), Type:=xlFillDefault Range("K4").FormulaR1C1 = "=LOOKUP(RC[44],RC[44])" Range("K4").AutoFill Destination:=Range("K4:K45"), Type:=xlFillDefault Range("M4").FormulaR1C1 = "=LOOKUP(RC[43],RC[43])" Range("M4").AutoFill Destination:=Range("M4:M45"), Type:=xlFillDefault Range("O4").FormulaR1C1 = "=LOOKUP(RC[42],RC[42])" Range("O4").AutoFill Destination:=Range("O4:O45"), Type:=xlFillDefault Range("Q4").FormulaR1C1 = "=LOOKUP(RC[41],RC[41])" Range("Q4").AutoFill Destination:=Range("Q4:Q45"), Type:=xlFillDefault Range("S4").FormulaR1C1 = "=LOOKUP(RC[40],RC[40])" Range("S4").AutoFill Destination:=Range("S4:S45"), Type:=xlFillDefault Range("U4").FormulaR1C1 = "=LOOKUP(RC[39],RC[39])" Range("U4").AutoFill Destination:=Range("U4:U45"), Type:=xlFillDefault Range("U4").FormulaR1C1 = "=LOOKUP(RC[39],RC[39])" Range("U4").AutoFill Destination:=Range("U4:U45"), Type:=xlFillDefault Range("Y4").FormulaR1C1 = "=LOOKUP(R[46]C[26],R[46]C[26])" Range("Y4").AutoFill Destination:=Range("Y4:Y45"), Type:=xlFillDefault Range("AA4").FormulaR1C1 = "=LOOKUP(R[46]C[25],R[46]C[25])" Range("AA4").AutoFill Destination:=Range("AA4:AA45"), Type:=xlFillDefault Range("AC4").FormulaR1C1 = "=LOOKUP(R[46]C[24],R[46]C[24])" Range("AC4").AutoFill Destination:=Range("AC4:AC45"), Type:=xlFillDefault Range("AE4").FormulaR1C1 = "=LOOKUP(R[46]C[23],R[46]C[23])" Range("AE4").AutoFill Destination:=Range("AE4:AE45"), Type:=xlFillDefault Range("AG4").FormulaR1C1 = "=LOOKUP(R[46]C[22],R[46]C[22])" Range("AG4").AutoFill Destination:=Range("AG4:AG45"), Type:=xlFillDefault Range("AI4").FormulaR1C1 = "=LOOKUP(R[46]C[21],R[46]C[21])" Range("AI4").AutoFill Destination:=Range("AI4:AI45"), Type:=xlFillDefault Range("AK4").FormulaR1C1 = "=LOOKUP(R[46]C[20],R[46]C[20])" Range("AK4").AutoFill Destination:=Range("AK4:AK45"), Type:=xlFillDefault Range("AM4").FormulaR1C1 = "=LOOKUP(R[46]C[19],R[46]C[19])" Range("AM4").AutoFill Destination:=Range("AM4:AM45"), Type:=xlFillDefault Range("AO4").FormulaR1C1 = "=LOOKUP(R[46]C[18],R[46]C[18])" Range("AO4").AutoFill Destination:=Range("AO4:AO45"), Type:=xlFillDefault Range("AQ4").FormulaR1C1 = "=LOOKUP(R[46]C[17],R[46]C[17])" Range("AQ4").AutoFill Destination:=Range("AQ4:AQ45"), Type:=xlFillDefault Range("F4").Select ActiveCell.FormulaR1C1 = "=IFERROR(RC[46]/R[92]C[46],RC[46]/100)" Range("F4").Select Selection.Style = "Percent" Range("F4").Select Selection.AutoFill Destination:=Range("F4:F45"), Type:=xlFillDefault Range("F4:F45").Select Selection.NumberFormat = "0%" Range("F4:F45").Select Selection.Borders(xlInsideVertical).LineStyle = xlNone Selection.Borders(xlInsideHorizontal).LineStyle = xlNone Range("H4").Select ActiveCell.FormulaR1C1 = "=IFERROR(RC[45]/R[92]C[45],RC[45]/100)" Range("H4").Select Selection.Style = "Percent" Range("H4").Select Selection.AutoFill Destination:=Range("H4:H45"), Type:=xlFillDefault Range("H4:H45").Select Selection.NumberFormat = "0%" Range("H4:H45").Select Selection.Borders(xlInsideVertical).LineStyle = xlNone Selection.Borders(xlInsideHorizontal).LineStyle = xlNone Range("J4").Select ActiveCell.FormulaR1C1 = "=IFERROR(RC[44]/R[92]C[44],RC[44]/100)" Range("J4").Select Selection.Style = "Percent" Range("J4").Select Selection.AutoFill Destination:=Range("J4:J45"), Type:=xlFillDefault Range("J4:J45").Select Selection.NumberFormat = "0%" Range("J4:J45").Select Selection.Borders(xlInsideVertical).LineStyle = xlNone Selection.Borders(xlInsideHorizontal).LineStyle = xlNone Range("L4").Select ActiveCell.FormulaR1C1 = "=IFERROR(RC[43]/R[92]C[43],RC[43]/100)" Range("L4").Select Selection.Style = "Percent" Range("L4").Select Selection.AutoFill Destination:=Range("L4:L45"), Type:=xlFillDefault Range("L4:L45").Select Selection.NumberFormat = "0%" Range("L4:L45").Select Selection.Borders(xlInsideVertical).LineStyle = xlNone Selection.Borders(xlInsideHorizontal).LineStyle = xlNone Range("N4").Select ActiveCell.FormulaR1C1 = "=IFERROR(RC[42]/R[92]C[42],RC[42]/100)" Range("N4").Select Selection.Style = "Percent" Range("N4").Select Selection.AutoFill Destination:=Range("N4:N45"), Type:=xlFillDefault Range("N4:N45").Select Selection.NumberFormat = "0%" Range("N4:N45").Select Selection.Borders(xlInsideVertical).LineStyle = xlNone Selection.Borders(xlInsideHorizontal).LineStyle = xlNone Range("P4").Select ActiveCell.FormulaR1C1 = "=IFERROR(RC[41]/R[92]C[41],RC[41]/100)" Range("P4").Select Selection.Style = "Percent" Range("P4").Select Selection.AutoFill Destination:=Range("P4:P45"), Type:=xlFillDefault Range("P4:P45").Select Selection.NumberFormat = "0%" Range("P4:P45").Select Selection.Borders(xlInsideVertical).LineStyle = xlNone Selection.Borders(xlInsideHorizontal).LineStyle = xlNone Range("R4").Select ActiveCell.FormulaR1C1 = "=IFERROR(RC[40]/R[92]C[40],RC[40]/100)" Range("R4").Select Selection.Style = "Percent" Range("R4").Select Selection.AutoFill Destination:=Range("R4:R45"), Type:=xlFillDefault Range("R4:R45").Select Selection.NumberFormat = "0%" Range("R4:R45").Select Selection.Borders(xlInsideVertical).LineStyle = xlNone Selection.Borders(xlInsideHorizontal).LineStyle = xlNone Range("T4").Select ActiveCell.FormulaR1C1 = "=IFERROR(RC[39]/R[92]C[39],RC[39]/100)" Range("T4").Select Selection.Style = "Percent" Range("T4").Select Selection.AutoFill Destination:=Range("T4:T45"), Type:=xlFillDefault Range("T4:T45").Select Selection.NumberFormat = "0%" Range("T4:T45").Select Selection.Borders(xlInsideVertical).LineStyle = xlNone Selection.Borders(xlInsideHorizontal).LineStyle = xlNone Range("V4").Select ActiveCell.FormulaR1C1 = "=IFERROR(RC[38]/R[92]C[38],RC[38]/100)" Range("V4").Select Selection.Style = "Percent" Range("V4").Select Selection.AutoFill Destination:=Range("V4:V45"), Type:=xlFillDefault Range("V4:V45").Select Selection.NumberFormat = "0%" Range("V4:V45").Select Selection.Borders(xlInsideVertical).LineStyle = xlNone Selection.Borders(xlInsideHorizontal).LineStyle = xlNone |
Изменено: Murlif - 07.10.2022 06:44:11