В расчете стоимость материалов занижена на -1% и стоимость работ значительно завышена на 66%
крепление
300
??
400
??
В расчете стоимость материалов незначительно завышена на 5% и стоимость работ незначительно завышена на 1%
фреска
100
??
200
??
В расчете стоимость материалов значительно завышена на 141% и стоимость работ завышена на 17%
Например: Рисование материалы "В расчете стоимость материалов занижена на -1%" , т.е надо повысить на 1%, аналогично по работам. Если "занижена" то увеличиваем на этот процент. Если "незначительно завышена", "завышена", "значительно завышена" то уменьшаем на этот процент
Нужно в первой вкладке проставить коды городов, согласно таблицы из вкладки 2. Суть в том, что надо из текста выделить по два числа, номер микрорайона и номер дома и потом согласно этому залить в колонку код.
Не очень понятно, как это автоматизировать, ибо исходные данные очень неоднородны.
В модуль книги Создайте в книге модуль и вставьте в него следующий
код.
Код
Option Explicit
Function udfRegExpReplace(ByVal sPattern As String, _
ByVal sText As String, _
Optional ByVal sReplace As String = "", _
Optional ByVal tfGlobal As Boolean = True, _
Optional ByVal tfIgnoreCase As Boolean = True, _
Optional ByVal tfMultiLine As Boolean = True, _
Optional ByVal tfTrim As Boolean = True)
Dim sTmp As String
Static objRegExp As Object
If objRegExp Is Nothing Then Set objRegExp = CreateObject("VBScript.RegExp")
udfRegExpReplace = sText
With objRegExp
.Global = tfGlobal
.IgnoreCase = tfIgnoreCase
.MultiLine = tfMultiLine
.Pattern = sPattern
If .Test(sText) Then
sTmp = .Replace(sText, sReplace)
If tfTrim Then sTmp = WorksheetFunction.Trim(sTmp)
udfRegExpReplace = sTmp
End If
End With 'objRegExp
End Function 'udfRegExpReplace
В R3C2 впишите формулу: =ВПР(udfRegExpReplace("(?:.+мкр. )(\d+[^-,]*)(?:-|,)(?:.+д. )(.+)";RC1;"$1 $2");Лист2!C1:C2;2;0) и протяните её вниз.