Excel: есть ли способ заменить специфическую часть строки ячейки? - PullRequest
0 голосов
/ 04 февраля 2019

У меня экспорт в Excel с колонкой, содержащей строку предыдущих тренировок персонала.Пример: First Name|Last Name|Training title|January 2018 to February 2018

Из-за необязательных полей формы, из которых были собраны данные, многие строки не имеют значения на конец месяца, как это January 2018 to Я пытаюсь найти формулу для поиска всех строк оканчивая на to (следовательно, за ним ничего не следует) и удаляя эту потерянную часть строки, чтобы она выглядела как January 2018.

Поиск и замена бесполезны, поскольку они также заменяют значениекогда есть конец месяца / года.Заменитель - хороший путь, но мне не удалось найти правильную структуру формулы.

Ответы [ 2 ]

0 голосов
/ 04 февраля 2019

Это с VBA.Не забудьте проверить наличие лишних пробелов в конце.если есть какие-либо использовать TRIM.

Option Explicit

Sub Remove()

    Dim Lastrow As Long, i As Long

    'Change Sheet if needed
    With ThisWorkbook.Worksheets("Sheet1")

        Lastrow = .Cells(.Rows.Count, "A").End(xlUp).Row

        For i = 1 To Lastrow

            If Right(.Range("A" & i).Value, 2) = "to" Then
                .Range("A" & i).Value = Left(.Range("A" & i).Value, Len(.Range("A" & i).Value) - 3)
            End If
        Next i


    End With

End Sub
0 голосов
/ 04 февраля 2019

Проверьте, заканчивается ли оно в to правым, и если да, то используйте левое, чтобы опустить его:

=IF(RIGHT(A1,2) = "to",LEFT(A1,LEN(A1)-2),A1)
...