22 de octubre de 2025

 https://drive.google.com/file/d/10T0DdYHQ_jeZqTmPjvTLfLB0_JWR-tKg/view?usp=sharing

 Private Sub Worksheet_Change(ByVal Target As Range)

Dim valAnterior As String, valNuevo As String, separador As String


separador = " " 'Modificar aqui por el caracter de preferencia


On Error GoTo Terminar


If Target.Column = 4 Then 'Para aplicarlo sobre una columna utilizar Target.Column = número de la columna

    If Target.SpecialCells(xlCellTypeAllValidation) Is Nothing Then

        GoTo Terminar

    Else

        If Target.Value = "" Then

            GoTo Terminar

        Else

            Application.EnableEvents = False

            valNuevo = Target.Value

            Application.Undo

            valAnterior = Target.Value

            If valAnterior = "" Then

                Target.Value = valNuevo

            Else

                If InStr(valAnterior, valNuevo) = 0 Then

                    Target.Value = valAnterior & separador & valNuevo

                Else

                    Target.Value = Replace(Trim(Replace(Replace(Replace(valAnterior, valNuevo, ""), separador, " "), "  ", " ")), " ", separador)

                End If

            End If

        End If

    End If

End If

Terminar:

Application.EnableEvents = True

End Sub