Добрый день, подскажите пожалуйста в задаче необходимо оставить содержимое ячейки, где числится "фамилия" и содержимое ячейки справа от этой. Вот пример кода, но проблема в объединенных ячейках. Если ячейка объдиненная, то ячейка содержимое ячейки справа удаляется.
Как обозначить, что если слева объединенная ячейка, то содержимое текущей удалять не нужно (пометил красным место, где я пробовал создать это условие)
Dim rng As Range Dim intPos As Integer Dim intPos2 As Integer Dim ws2 As Worksheet Dim ra As Range, r As Range Application.ScreenUpdating = False
For Each ws2 In Worksheets For Each ra In ws2.UsedRange.Rows If Not ra.Find("äíè", , xlValues, xlPart) Is Nothing Then
Set r = ra
End If Next
For Each rng In ws2.UsedRange.Cells intPos = InStr(rng.Value, Фамилия) + InStr(rng.Value, "Фамилия") intPos2 = 0 If rng.Column <> 1 Then intPos = InStr(rng.Value, Фамилия) + InStr(rng.Offset(0, -1), Фамилия)+ InStr(rng.Offset(0, -1), Cell.MergeCells = -1)
If rng.Offset(0, -1).MergeCells And InStr(rng.Offset(0, -1), "Фамилия ") = 1 Then intPos2 = 1 End If End If
If Not intPos > 0 And intPos2 = 0 Then rng.Value = ""
End If Next rng Next ws2
Добрый день, подскажите пожалуйста в задаче необходимо оставить содержимое ячейки, где числится "фамилия" и содержимое ячейки справа от этой. Вот пример кода, но проблема в объединенных ячейках. Если ячейка объдиненная, то ячейка содержимое ячейки справа удаляется.
Как обозначить, что если слева объединенная ячейка, то содержимое текущей удалять не нужно (пометил красным место, где я пробовал создать это условие)
Dim rng As Range Dim intPos As Integer Dim intPos2 As Integer Dim ws2 As Worksheet Dim ra As Range, r As Range Application.ScreenUpdating = False
For Each ws2 In Worksheets For Each ra In ws2.UsedRange.Rows If Not ra.Find("äíè", , xlValues, xlPart) Is Nothing Then
Set r = ra
End If Next
For Each rng In ws2.UsedRange.Cells intPos = InStr(rng.Value, Фамилия) + InStr(rng.Value, "Фамилия") intPos2 = 0 If rng.Column <> 1 Then intPos = InStr(rng.Value, Фамилия) + InStr(rng.Offset(0, -1), Фамилия)+ InStr(rng.Offset(0, -1), Cell.MergeCells = -1)
If rng.Offset(0, -1).MergeCells And InStr(rng.Offset(0, -1), "Фамилия ") = 1 Then intPos2 = 1 End If End If
If Not intPos > 0 And intPos2 = 0 Then rng.Value = ""