2008-10-21 14 views
31

Tengo una hoja de Excel llena de veces.Convertir campos de hora a cadenas en Excel

Ellos tienen el formato para que se vieran como: 01:00:15

Sin embargo, si se cambia el formato de las celdas a texto, cambian a la representación numérica subyacente de la época: 0.041840278

¿Cómo puedo convertir las celdas para que sean celdas de texto pero todavía tienen el tiempo en ellas?

Respuesta

21

copiar la columna pegarlo en el bloc de notas copiar de nuevo pasta especial como texto

+7

Eso es hacer trampa;) –

+10

-1 si esta es una pregunta de programación, la respuesta no es útil. –

+1

Podría ser una trampa, pero para mí fue una experiencia totalmente resuelta. – overgroove

69

Este tipo de esto es siempre un dolor en Excel, usted tiene que convertir los valores usando una función porque una vez que Excel convierte la celdas a Tiempo se almacenan internamente como números. Aquí está la mejor manera que sé cómo hacerlo:

Supongo que sus tiempos están en la columna A comenzando en la fila 1. En la celda B1, ingrese esta fórmula: =TEXT(A1,"hh:mm:ss AM/PM"), arrastre la fórmula hacia abajo en la columna B hasta el final de sus datos en la columna A. Seleccione los valores de la columna B, copie, vaya a la columna C y seleccione "Pegado especial", luego seleccione "Valores". Seleccione las celdas que acaba de copiar en la columna C y formatee las celdas como "Texto".

+0

Use una Variante de fecha en VBA. –

+3

Tuve que renunciar a esta, ya que no puedo creer que la otra respuesta haya sido aceptada, ¡hace que parezca una broma! – Lunatik

+5

Sí, porque tiene tanto sentido pasar el tiempo extra escribiendo una fórmula cuando la respuesta aún se reduce a "pegar como texto" –

5

Fácil. Para cambiar un valor de tiempo como: 1:00:15 a texto, puede usar la función 'TEXTO'. Ejemplo, si su valor de tiempo (1:00:15) está contenido en la celda 'A1', puede convertirlo en texto haciendo: Texto (A1, "h: mm: ss"). El resultado sigue siendo el mismo: 1:00:15. Pero note que esta vez, se ha convertido en un valor de texto.

+1

Jaja, ¿acabas de crear una cuenta para responder a 2 preguntas antiguas? – Mike

0

La continuación trabajó para mí

  • primera copia el contenido decir "1:00:15" en libreta
  • A continuación, seleccione una nueva columna en la que tiene que copiar el texto desde el Bloc de notas.
  • Luego haga clic derecho y seleccione la opción de celda de formato y en esa pestaña seleccionar números y en esa pestaña seleccione la opción "Texto".
  • Ahora copie el contenido del bloc de notas y péguelo en esta columna de Excel. será texto pero en formato "1:00:15".
6

Si desea mostrar esos valores numéricos como una hora, cambie el formato de la celda a Hora.

Y si quieres transformarlo a un texto en otra celda:

=TEXT(A1,"hh:mm:ss") 
+0

Muy bien. Gracias. – sj59

+0

Edite su respuesta: = TEXTO (A1, "hh: mm: ss") es verdadero. – sj59

+0

El uso de un ',' o ';' en una función de Excel es en realidad una configuración regional en su ventana: el separador de lista. En mi pc estaba configurado a ';' – LukStorms

0

Copiar a una variable Fecha luego transformarlo en texto con format(). Ejemplo:

Function GetMyTimeField() 
    Dim myTime As Date, myStrTime As String 

    myTime = [A1] 
    myStrTime = Format(myTime, "hh:mm") 
    Debug.Print myStrTime & " Nice!" 

End Function 
Cuestiones relacionadas