Macro de VBA para concatenar columnas de datos en Excel

Resumen

En Microsoft Excel, puede usar una macro para concatenar los datos en dos columnas adyacentes y mostrar el resultado en la columna a la derecha de las columnas que contienen los datos. Este artículo contiene una macro (procedimiento Sub) de Ejemplo de Microsoft Visual Basic para Aplicaciones (VBA) para lograrlo.

Más información

Microsoft proporciona ejemplos de programación solo para ilustración, sin garantía expresa o implícita. Esto incluye, entre otras, las garantías implícitas de comerciabilidad o idoneidad para un propósito determinado. En este artículo se supone que está familiarizado con el lenguaje de programación que se muestra y con las herramientas que se usan para crear y depurar procedimientos. Los ingenieros de soporte técnico de Microsoft pueden ayudar a explicar la funcionalidad de un procedimiento determinado. Sin embargo, no modificarán estos ejemplos para proporcionar funcionalidad adicional o construir procedimientos para satisfacer sus requisitos específicos.

Macro de ejemplo de Visual Basic para Aplicaciones (VBA)


Sub ConcatColumns()

   Do While ActiveCell <> ""  'Loops until the active cell is blank.

      'The "&" must have a space on both sides or it will be
      'treated as a variable type of long integer.

      ActiveCell.Offset(0, 1).FormulaR1C1 = _
         ActiveCell.Offset(0, -1) & " " & ActiveCell.Offset(0, 0)

      ActiveCell.Offset(1, 0).Select
   Loop

End Sub

NOTA: La instrucción ActiveCell.Offset(0, 1). FormulaR1C1 se puede reemplazar por la instrucción ActiveCell.Offset(0, 1). Fórmula. Se pueden usar con el mismo éxito si solo usa texto y números (no fórmulas). La R1C1 usada al final de la primera instrucción hace referencia a la fila uno, a la columna uno y es el formulario usado en los ejemplos de la Ayuda.
 

Cómo usar la macro en Microsoft Office Excel 2007

  1. Abra el libro que contiene los datos.

  2. Presione ALT+F11 para iniciar el Editor de Visual Basic.

  3. En el menú Insertar , haga clic en Módulo para insertar un módulo. Escriba la macro en la ventana de código del módulo.

  4. En el menú Archivo , haga clic en Cerrar y volver a Microsoft Excel.

  5. Seleccione la hoja de cálculo que contiene los datos que desea concatenar.

  6. Haga clic en la celda superior de la columna de la derecha de los datos que desea concatenar. Por ejemplo, si las celdas A1:A100 y B1:B100 contienen datos, haga clic en la celda B1.

  7. Haga clic en la pestaña Desarrollador . Si no se muestra la pestaña Programador , siga estos pasos:

    1. Haga clic en el botón de Microsoft Office y, luego, en Opciones de Excel.
    2. Haga clic en Popular.
    3. Haga clic para seleccionar la casilla Mostrar pestaña Programador en la cinta de opciones .
    4. Haga clic en Aceptar para cerrar el cuadro de diálogo Opciones de Excel.
  8. Haga clic en Macros en el grupo Código .

  9. Seleccione la macro ConcatColumns y haga clic en Ejecutar.

Cómo usar la macro en Microsoft Office Excel 2003 y en versiones anteriores de Excel

  1. Abra el libro que contiene los datos.
  2. Presione ALT+F11 para iniciar el Editor de Visual Basic.
  3. En el menú Insertar , haga clic en Módulo para insertar un módulo. Escriba la macro en la ventana de código del módulo.
  4. En el menú Archivo , haga clic en Cerrar y volver a Microsoft Excel.
  5. Seleccione la hoja de cálculo que contiene los datos que desea concatenar.
  6. Haga clic en la celda superior de la columna de la derecha de los datos que desea concatenar. Por ejemplo, si las celdas A1:A100 y B1:B100 contienen datos, haga clic en la celda B1.
  7. En el menú Herramientas , seleccione Macros y, a continuación, haga clic en Macro. Seleccione la macro ConcatColumns y haga clic en Ejecutar.