Добрый день. Есть макрос который из одной ячейки выносит сумму значений в скобках, в другую ячейку. Но проблема в том, что нужно постоянно выбирать диапазон (О12:О124). Начало всегда начинается с ячейки О12. Можно как то автоматизировать макрос, что б не выбирать в ручную диапазон а допустим по условию что в столбце L12: L есть какое-то значение .
[spoiler][vba][code]Sub кабель() Set diap = Intersect(Sheets("0,4кВ").Range("O12:O124"), Sheets("0,4кВ").UsedRange) mas = diap.Formula ReDim masrez(1 To UBound(mas), 1 To 1) For i = 1 To UBound(mas) nach = InStr(mas(i, 1), "(") kon = InStr(mas(i, 1), ")") If nach > 0 And kon > 0 And Not mas(i, 1) Like "=SUBTOTAL*" Then tekst = Mid(mas(i, 1), nach + 1, kon - nach - 1) masrez(i, 1) = "=" & tekst tekst = "" End If Next diap.Offset(, 25).Formula = masrez MsgBox "Проверь сечение!", vbInformation, "Не ошибка"
Добрый день. Есть макрос который из одной ячейки выносит сумму значений в скобках, в другую ячейку. Но проблема в том, что нужно постоянно выбирать диапазон (О12:О124). Начало всегда начинается с ячейки О12. Можно как то автоматизировать макрос, что б не выбирать в ручную диапазон а допустим по условию что в столбце L12: L есть какое-то значение .
[spoiler][vba][code]Sub кабель() Set diap = Intersect(Sheets("0,4кВ").Range("O12:O124"), Sheets("0,4кВ").UsedRange) mas = diap.Formula ReDim masrez(1 To UBound(mas), 1 To 1) For i = 1 To UBound(mas) nach = InStr(mas(i, 1), "(") kon = InStr(mas(i, 1), ")") If nach > 0 And kon > 0 And Not mas(i, 1) Like "=SUBTOTAL*" Then tekst = Mid(mas(i, 1), nach + 1, kon - nach - 1) masrez(i, 1) = "=" & tekst tekst = "" End If Next diap.Offset(, 25).Formula = masrez MsgBox "Проверь сечение!", vbInformation, "Не ошибка"Дмитрий6057
Сообщение отредактировал Дмитрий6057 - Пятница, 05.03.2021, 11:47