Error: no se puede convertir el valor «de tipo Texto a tipo Entero

Un usuario Pregunto ✅

jbartlett

Hola,

¿Alguien puede explicar (de forma no técnica) cómo soluciono el error anterior?

Tengo datos que llegan a través de sa enumerados a continuación

116

18

No puedo cambiar la fuente de datos, así que necesito arreglarlo con Power BI Desktop. Para los datos anteriores, busco los números 116 y 18.

He creado una columna que mira los datos y con una serie de fórmulas de función DERECHA, función LEN y función SUBSTITUD. Ahora tengo una columna con solo los números, sin embargo, todavía se reconoce como texto y no como un número.

Intenté convertir la columna de texto a número y falla debido al error en la línea de asunto de este mensaje.

Cualquier ayuda sería apreciada

hdzhendov

Esta conversación es bastante antigua, pero puede ser valiosa para alguien. Tuve el mismo problema, pero la fuente para mí era una hoja de cálculo de Excel. En el Editor de consultas, todo se veía bien, pero en Power BI tenía algunos rollos en blanco en la parte superior. Las celdas en blanco fueron el problema del error. VALUE () parece no saber qué hacer con cadenas vacías como «».

Anónimo

Sugeriría solucionar este problema desde dentro de la sección Editar consultas. Lo que debe hacer es quitar el

y el

. Entonces te quedarás con algo que puedes convertir a Número.

El método más sencillo es abrir Editar consultas. Busque la consulta que contiene estos valores. Haga clic en la columna con estos valores y haga esto:

  • Seleccione la columna con un clic izquierdo
  • En el área de Inicio de la cinta, busque «Reemplazar valores». Poner
    en el primer cuadro y deje el segundo cuadro vacío
  • Repita el último paso nuevamente pero use

en el primer cuadro.

  • Ahora haga clic en el icono en el lado izquierdo del nombre de la columna y cambie el tipo de datos a Número entero.
  • Cerrar y aplicar.
  • jbartlett

    En respuesta a Anónimo

    Sí, lo intenté también y falló … Hice un hallazgo para reemplazar el

    y reemplazado con nada y lo mismo con

    … en realidad eliminó todos los datos … y no deja los números restantes

    Anónimo

    En respuesta a jbartlett

    Debes haber cometido un error. La función Reemplazar valores solo reemplaza la subcadena que le proporcione.

    Una solución más técnica sería «Agregar columna» -> Columna personalizada. Llame al campo con el nombre que desee y haga que ambos sean:

    = Text.Start(Text.End(Text.Trim([NumberField]), Text.Length(Text.Trim([NumberField])) - 5, Text.Length(Text.Trim([NumberField])) - 11)

    jbartlett

    En respuesta a Anónimo

    No reconoce los comandos

    Capture.PNG

    Anónimo

    En respuesta a jbartlett

    Esa es una fórmula de Power Query. Haga clic en «Editar consultas» y busque la consulta con su tabla de información. Seleccione «Agregar columna» en la cinta y busque «Columna personalizada». Hay un cuadro para el nombre de la columna y luego un cuadro para esa fórmula en particular. Una vez que haga clic en Aceptar, verá una nueva versión de la tabla con un intento de procesar la fórmula. Se mostrarán los errores y podrá modificar la fórmula para corregirla.

    Close and Apply intentará importar sus datos nuevamente con esta nueva columna incluida.

    jbartlett

    En respuesta a Anónimo

    Estoy recurriendo a intentar volver a los datos de origen y corregir ese final …

    anandav

    @jbartlett,

    Intente crear una nueva columna con la función VALUE () DAX:

    Columna = VALOR (Tabla1[Text])

    Esto debería convertir el texto en número.

    Alternativamente, puede hacer su limpieza de texto (sustituir, recortar, etc.) en una variable y finalmente devolver el número.

    Columna =
    VAR TestVar = TRIM (Tabla1[Text])
    REGRESO
    VALOR (Tabla1[Text])

    Espero que esto ayude.

    Si esto resuelve su problema, marque como solución.

    jbartlett

    En respuesta a anandav

    probé la función de valor en la nueva columna … falló

    anandav

    En respuesta a jbartlett

    ¿Puede comprobar si tiene valores de basura en su columna como «

    jbartlett

    En respuesta a anandav

    Lo que he estado haciendo (como un medio para llegar al final) es una serie de columnas calculadas para asegurar que cada paso funcione …

    El primer paso era una columna que eliminaba toda la basura antes de los números que se

    Derecha (‘Table1[text], LEN (‘Tabla 1[text]) -8)

    NOTA: en la columna con los datos actualizados, no todas las filas están pobladas, comencé lo anterior con un «si» «hacer» «

    Tuve que ir menos 8 en la fórmula anterior para deshacerme del texto ajustado … los datos tenían 2 líneas en blanco y luego en la 3 línea tenía el texto.

    Esto creó con éxito una columna de

    116

    cambió los datos a 116

    18

    cambió los datos a 18

    En la segunda columna calculada hice una función de sustitución para sustituir

    sin nada (así que «»).

    Luego, solo como una capa adicional (pero probablemente no sea necesaria), hice una función de recorte para asegurarme de que no quedaran espacios aleatorios en los datos.

    A partir de ahí, me queda una columna que parece ser solo números pero es texto y no puedo convertir a un número (o valor)

    Deja un comentario

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *