Página 1 de 1

[RESUELTO] Quitar comilla especial ' en calc

Publicado: Mar Ene 13, 2009 10:06 am
por Jose Manuel
A veces cuando insertamos dígitos en una celda de calc, este, lo entiende como texto y añade una comilla "especial" al comienzo del dígito. Sin embargo decimos que es especial porque no la podemos borrar directamente, es una comilla implícita mediante la cual, Calc lo interpreta como texto no como números. Como consecuencia no se pueden hacer operaciones aritméticas.

Para eliminar esta comilla especial (una posible solución sería la siguiente macro):

Código: Seleccionar todo

Sub quitar_comilla_especial
    oSheet = ThisComponent.getSheets().getByIndex(0)
    Celda = oSheet.getCellByPosition(0,0)
    Celda.FormulaLocal = Valor(Celda.FormulaLocal)
  End Sub

Function Valor(celda)
    celda = mid(celda,2,len(celda))
    Valor = celda
End Function
Esa comilla aparece en la propiedad FormulaLocal.
Este ejemplo borra la comilla de la primera celda de la primera hoja de cálculo.
Se puede hacer extensible a todo el documento con un bucle iterativo.

Re: [Resuelto] Quitar comilla especial ' en calc

Publicado: Mié Jun 20, 2012 5:43 pm
por pedrito76
Hola,

no he conseguido hacer que sea extensible a todo el documento, o a toda una hoja que es donde lo necesito, como lo podría hacer, ya se que el tema esta cerrado, pero es que lo necesito para saber como quitar esas malditas comillas que me aparecen y no se como hacer la bucle

Re: [RESUELTO] Quitar comilla especial ' en calc

Publicado: Mié Jun 20, 2012 6:48 pm
por SLV-es
Tan sólo necesitas hacer un doble bucle, para que recorra todas las celdas de la hoja

Supongamos que has utilizado hasta la columna 15 y la fila 300

Código: Seleccionar todo

Sub quitar_comilla_especial
    dim c as integer, r as integer
    oSheet = ThisComponent.getSheets().getByIndex(0)
    for c=0 to 15
       for r= 0 to 300
          Celda = oSheet.getCellByPosition(c,r)
          Celda.FormulaLocal = Valor(Celda.FormulaLocal)
       next
    next
  End Sub
Espero que te sirva
Saludos

Re: [RESUELTO] Quitar comilla especial ' en calc

Publicado: Jue Jun 21, 2012 12:25 pm
por pedrito76
Hola Salva,

gracias por responder lo primero, decirte que la macro va muy bien, pero cuando la vuelvo a ejecutar me borra el primer dígito de la fila anterior que he copiado, no se si me explico

:shock:

Re: [RESUELTO] Quitar comilla especial ' en calc

Publicado: Jue Jun 21, 2012 12:45 pm
por SLV-es
Ok, no me fijé en la segunda función.

Debería eliminar sólo si es comilla simple, no el primer carácter

Código: Seleccionar todo

Function Valor(celda)
    If left(celda,1) = "'" then  
        celda = mid(celda,2)
    End If
    Valor = celda
End Function
Ten cuidado; justo tras el igual es: comillas dobles · comilla sencilla · comillas dobles " ' " , pero sin espacios, claro. No confundir con acento.

Solucionado !!!!

Re: [RESUELTO] Quitar comilla especial ' en calc

Publicado: Jue Jun 21, 2012 4:04 pm
por pedrito76
Gracias y mil veces gracias,

lo que uno se puede complicar con algo y no verlo.

ahora perfecto :super:

Re: [RESUELTO] Quitar comilla especial ' en calc

Publicado: Jue Jun 21, 2012 9:56 pm
por mriosv
Cuando al introducir un número en una celda este queda con la comilla simple, es porque la celda tiene el formato texto @.
Dejando un formato standar o cualquier numérico, el número se introducirá sin comilla.
Para eliminar la comilla con buscar-reemplazar:
-buscar: .*
-reemplazar: &
En mas opciones marcar el uso de expresiones regulares.
Y reemplazar.

Re: [RESUELTO] Quitar comilla especial ' en calc

Publicado: Vie Jun 22, 2012 9:54 am
por pedrito76
mriosv

pues en mi hoja de calc los formatos de las celdas estan con formato standar o numerico, por eso pedí ayuda

gracias por tu respuesta también. :super:

Re: [RESUELTO] Quitar comilla especial ' en calc

Publicado: Vie Jun 22, 2012 10:43 pm
por mriosv
Pues hay pocas razones para que al introducir un número en una celda con formato standar se quede como texto.
Solo se me ocurre que se esté usando la coma como separador decimal y se introduzca con un punto o viceversa.

En otro caso:
¿Ocurre con todos los fichero de hoja de calculo?

Re: [RESUELTO] Quitar comilla especial ' en calc

Publicado: Mié May 08, 2013 10:33 am
por a1xys
La forma más sencilla: con VALOR()

Pones la celda con comilla entre la función y listo: =VALOR (A1)

Re: [RESUELTO] Quitar comilla especial ' en calc

Publicado: Jue Mar 31, 2016 12:57 pm
por Cham
mriosv escribió:Cuando al introducir un número en una celda este queda con la comilla simple, es porque la celda tiene el formato texto @.
Dejando un formato standar o cualquier numérico, el número se introducirá sin comilla.
Para eliminar la comilla con buscar-reemplazar:
-buscar: .*
-reemplazar: &
En mas opciones marcar el uso de expresiones regulares.
Y reemplazar.
Una pregunta... ¿qué significa exactamente ".*" ( o sea, PuntoAsterisco) y qué significa &?
Un saludo.

Re: [RESUELTO] Quitar comilla especial ' en calc

Publicado: Vie Abr 01, 2016 12:40 am
por mriosv
Porfa no repreguntes en un hilo resuelto.

Busca en la ayuda, 'expresiones regulares'.