#excel #vba
Вопрос:
Если какая — либо ячейка в столбце A содержит слово «Обучение», то ничего не делайте, если не добавляйте слово «Обучение» — перед текстом, уже находящимся в ячейке
Я работаю над макросом для просмотра столбца A на одном листе и не могу понять, как проверить, содержит ли ячейка слово в операторе if или что-то в этом роде. Столбец A содержит формулу для создания уникальных идентификаторов. Текущая настройка, которая у меня есть, добавляет слово, но если оно будет запущено более одного раза, оно будет дублироваться в ячейках.
Код, над которым я сейчас работаю:
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 2 Then 'This is the column that causes the ID to be created 'This uses the target offset so it assumes in two spots below that the column to update is "A" and 'that the column is one position to the left of the target column above If Target.Offset(0, -1).Value = "" Then Target.Offset(0, -1).Value = Application.WorksheetFunction.Max(Columns("A")) 1 End If End If End Sub Function Max_Each_Column(Data_Range As Range) As Integer Dim TempArray() As Double, i As Long If Data_Range Is Nothing Then Exit Function With Data_Range ReDim TempArray(1 To .Columns.Count) For i = 1 To .Columns.Count TempArray(i) = Application.Max(.Columns(i)) Next End With Max_Each_Column = TempArray End Function Sub AppendToExistingOnLeft() For Each cell In Range("A1:A1000000") If cell.Value lt;gt; "" Then If Not cell.Value Like "Training*" Then cell.Value = "Training-" amp; cell.Value End If Next End Sub
Комментарии:
1.
If Not cell.Value Like "Training*" Then cell.Value = "Training-" amp; cell.Value
😀2. @2acb_John_Suren Не публикуйте код в комментарии, добавьте то, что предложил Мацей Лос, к вашему исходному вопросу и укажите его в качестве решения