Sto cercando di scambiare il contenuto tra due celle in Excel in base al contenuto di una terza cella. Quindi, ho una colonna in Excel, ad esempio Colonna C. Voglio scambiare i valori delle celle corrispondenti nelle colonne A e B in base alla presenza di una "S" nella cella corrispondente nella colonna C. Non sono esperto in VB, ma ho questi due macro che sto cercando di ri-lavorare. Il primo è nel modulo foglio ed è il seguente:
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
Il secondo è nel modulo Standard ed è il seguente:
Sub swap()
Dim cellVal
cellVal = ActiveCell.Value
ActiveCell.Value = ActiveCell.Offset(0, 1).Value
ActiveCell.Offset(0, 1).Value = cellVal
End Sub
Non funziona per qualche motivo. Qualcuno mi può aiutare? Penso che sia perché ho ".Count" nella prima macro e sto cercando una "S", ma non so come cambiarlo. Qualsiasi aiuto sarebbe molto apprezzato.