Я пытаюсь поменять содержимое между двумя ячейками в Excel на основе содержимого третьей ячейки. Итак, у меня есть столбец в Excel - скажем, столбец C. Я хочу поменять местами значения соответствующих ячеек в столбцах A и B, основываясь на том, есть ли "S" в соответствующей ячейке в столбце C. Я не эксперт в В.Б., но у меня есть эти два макроса, которые я пытаюсь переделать. Первый находится в модуле листа и выглядит следующим образом:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Not Application.Intersect(Range("C1"), Target) Is Nothing Then
If IsNumeric(Target.Value) And Target.Value = "S" Then
Call swap
End If
End If
End Sub
Второй находится в стандартном модуле и выглядит следующим образом:
Sub swap()
Dim cellVal
cellVal = ActiveCell.Value
ActiveCell.Value = ActiveCell.Offset(0, 1).Value
ActiveCell.Offset(0, 1).Value = cellVal
End Sub
Это не работает по какой-то причине. Может кто-нибудь мне помочь? Я думаю, это потому, что у меня есть ".Посчитайте "в первом макросе, и я ищу" S ", но я не знаю, на что его изменить. Любая помощь приветствуется.