Separando las células

January 18

Probablemente te ha pasado antes: se obtiene los datos de la hoja de trabajo, y una de las columnas incluye nombres. El único problema es que todos los nombres están agrupados juntos. Por ejemplo, la célula contiene "Allen Wyatt," pero preferiría tener el primer nombre en una columna, y el último nombre en la columna vecina a la derecha. ¿Cómo usted tira los nombres separados?

Usted puede utilizar fácilmente el texto en columnas cuentan en Excel para extraer los datos de diferencia. Sólo tienes que seguir estos pasos:

  1. Seleccione el rango de celdas que desea dividir.
  2. Elija Texto en columnas en el menú Datos. Excel se inicia el Asistente para convertir texto en columnas. (Ver Figura 1.)

    Separando las células

    Figura 1. El comienzo del convertir texto en columnas del asistente.

  3. Elija si el texto que ha seleccionado es de ancho fijo o delimitado. (En el caso de un espacio entre el primero y el último nombre, el texto se delimitado).
  4. Haga clic en Siguiente.
  5. Especifique los delimitadores que desea que Excel reconozca. En el caso de separando nombres, usted debe asegurarse de que utiliza espacios como delimitadores.
  6. Haga clic en Finalizar.

Excel le abre las células de su rango seleccionado, separando todo el texto en el delimitador especificado. Excel utiliza sin embargo muchas columnas son necesarias para contener los datos.

Si usted no quiere difundir sus datos completamente a través de las columnas, entonces usted tendrá que utilizar una macro. Por ejemplo, si una celda contiene "John Davis, Esq.", A continuación, utilizando el texto en columnas cuentan dará lugar a que los datos sean repartidas en tres columnas: la primera contiene "John", el segundo contiene "Davis", (con la coma), y el tercero contiene "Esq." Si se quiere tener la división de datos en dos columnas ("Juan" en uno y ". Davis, Esq" en la otra, entonces la macro siguiente será útil:

Sub pullapart ()
Dim PrimeraColumna As Integer, FirstRow As Integer
Dim RowCount As Integer
Dim ThisRow As Integer
Dim j As Integer, k As Integer
Dim MyText As String

PrimeraColumna = ActiveWindow.RangeSelection.Column
FirstRow = ActiveWindow.RangeSelection.Row
RowCount = ActiveWindow.Selection.Rows.Count

Para j = 1 Para RowCount
ThisRow = FirstRow + j - 1
MiTexto = Cells (ThisRow, PrimeraColumna) .Texto
k = InStr (MyText, "")
Si k> 0 Then
Las células (ThisRow, PrimeraColumna + 1) .Value = mediano (MyText, k + 1)
Las células (ThisRow, PrimeraColumna) .Value = Izquierda (MiTexto, k - 1)
End If
Siguiente j
End Sub

Esta macro examina cada célula y deja todo hasta el primer espacio en la celda seleccionada, y mueve todo después de que el espacio dentro de la columna a la derecha. La única "gottcha" con esta macro es para asegurarse de que no tienes nada en la columna a la derecha de cualquier células selecciona cuando lo ejecuta.

ExcelTips es su fuente de capacitación rentable Microsoft Excel. Esta punta (2967) se aplica a Microsoft Excel 97, 2000, 2002, y 2003. Usted puede encontrar una versión de este consejo para la interfaz de cinta de Excel (Excel 2007 y versiones posteriores) aquí: separando las células.