Concatenar un rango de celdas

Malgven -  
Vahde Mensajes publicados 3 Fecha de registro   Estado Miembro Última intervención   -
Hola,

Me gustaría concatenar un rango de celdas en Excel para que los datos contenidos en diferentes celdas se agrupen en una sola celda y se separen por comas.
Mis datos son números con decimales separados por un punto (ej.: 5.45) y me gustaría que se mantuvieran así en el proceso.

Quería hacer un InputBox para seleccionar el rango de celdas que quiero fusionar, pero estoy completamente bloqueado y no puedo hacer que esta macro funcione.

¿Alguien tiene alguna idea?

Gracias de antemano.

Configuración: Windows / Firefox 45.0

2 respuestas

  1. Gyrus Mensajes publicados 3360 Estado Miembro 526
     
    Hola,

    Inténtalo así
    Sub Test()
    Dim ref As Range, Cel As Range
    Dim Texto As String
    Set ref = Application.InputBox("Por favor selecciona las celdas en la hoja", Type:=8)
    For Each Cel In ref
    Texto = Texto & Cel.Value & ", "
    Next Cel
    MsgBox "Valores concatenados : " & Left(Texto, Len(Texto) - 2)
    End Sub

    ¡Hasta luego!
    1
    1. Malgven
       
      Hola,

      ¡Muchas gracias por tu respuesta!
      Casi funciona.
      De hecho, obtengo el resultado en el cuadro, mientras que me gustaría que estuviera en una celda para poder copiarlo y pegarlo en otro software.

      ¿Tienes (otra vez) alguna idea?

      ¡Gracias!
      0
      1. Gyrus Mensajes publicados 3360 Estado Miembro 526 > Malgven
         
        No he indicado el resultado en una celda porque no sé en qué celda deseas colocarlo.

        Ejemplo con el resultado en A1:
        Sustituyes
        MsgBox "Valores concatenados: " & Left(Texte, Len(Texte) - 2)
        por
        Range("A1")=Left(Texte, Len(Texte) - 2)

        A+
        0
      2. Malgven > Gyrus Mensajes publicados 3360 Estado Miembro
         
        Sí, funciona, ¡muchas gracias!

        ¿Y cómo puedo hacer para que el cuadro ponga el resultado en la celda activa? :o
        0
      3. Gyrus Mensajes publicados 3360 Estado Miembro 526 > Malgven
         
        Activecell=Left(Texte, Len(Texte) - 2)

        ¿Increíble, ¿verdad?

        ¡Hasta luego!
        0
      4. Malgven > Gyrus Mensajes publicados 3360 Estado Miembro
         
        ¡ Uf! ¡Es perfecto!
        Muchas gracias.
        Solita, realmente me volví loca buscando soluciones simples al final.

        ¡Otra vez gracias!
        0
  2. Vahde Mensajes publicados 3 Fecha de registro   Estado Miembro Última intervención  
     
    Hola,

    El tema es un poco antiguo, pero tengo una pregunta.
    Me gustaría, en lugar de poner una "," entre las celdas concatenadas, un salto de línea ALT+INTRO.

    ¿Cómo puedo hacerlo, por favor?
    0