Carácter extraño que causa error al intentar importar una hoja de Excel

Carácter extraño que causa error al intentar importar una hoja de Excel

Este carácter " " (que no es visible una vez que guardo este comentario). Parecen dos soportes juntos, que se tocan para formar un rectángulo alto. []

Una hoja de Excel exportada desde Filemaker (versión anterior) provoca un error y detiene la importación en una fila determinada que tiene un carácter recurrente.

Solo puedo ver el carácter extraño cuando copio/pego el contenido de la celda en Wordpad. La línea contiene 2 etiquetas de marcado de salto de línea invisibles y entre ellas está . Siempre que esto sucede tengo que editar el contenido en Wordpad, pegarlo y luego funciona. Sigue apareciendo cada pocas filas.

Segunda pregunta. ¿Hay alguna manera de buscar esto en Excel y eliminarlos todos?

Respuesta1

Primero debemos identificar al personaje malhechor y luego eliminarlo.

Primero coloque la siguiente función definida por el usuario en un módulo estándar:

Public Function WhatsIn(s As String) As String
    Dim msg As String, i As Long, L As Long

    L = Len(s)
    msg = L & vbCrLf
    For i = 1 To L
        msg = msg & i & "    " & AscW(Mid(s, i, 1)) & vbCrLf
    Next i
    WhatsIn = msg
End Function

La función nos dice exactamente qué contiene una celda. Da:

  1. el número de caracteres
  2. para cada carácter, el valor Unicode

    . Aquí hay un ejemplo:

ingrese la descripción de la imagen aquí

Sabemos cuántos caracteres hay en la celda.C2contiene y conocemos el código ASCII de cada carácter.

Las funciones definidas por el usuario (UDF) son muy fáciles de instalar y utilizar:

  1. ALT-F11 abre la ventana VBE
  2. ALT-I ALT-M abre un módulo nuevo
  3. pegue las cosas y cierre la ventana de VBE

Si guarda el libro de trabajo, la UDF se guardará con él. Si está utilizando una versión de Excel posterior a 2003, debe guardar el archivo como .xlsm en lugar de .xlsx.

Para eliminar la UDF:

  1. abrir la ventana VBE como arriba
  2. borrar el código
  3. cerrar la ventana VBE

Para utilizar la UDF desde Excel:

=Qué hay(A1)

Para obtener más información sobre las macros en general, consulte:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

y

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

y para obtener detalles sobre las UDF, consulte:

http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx

¡Las macros deben estar habilitadas para que esto funcione!

Una vez que sepamos el número ASCII, ejecute una macro como:

Sub KleanUp()
    Cells.Replace ChrW(166), ""
End Sub

donde reemplazaríamos el166con el número real.

información relacionada