Foros del Web » Soporte técnico » Ofimática »

Escribir en celda activa desde macro excell

Estas en el tema de Escribir en celda activa desde macro excell en el foro de Ofimática en Foros del Web. Hola, estoy intentando desarrollar una funcion que me permita escribir en la celda actual la traduccion de un numero a texto, pero cuando llamo a ...
  #1 (permalink)  
Antiguo 18/10/2015, 09:06
 
Fecha de Ingreso: febrero-2006
Mensajes: 446
Antigüedad: 18 años, 9 meses
Puntos: 3
Escribir en celda activa desde macro excell

Hola, estoy intentando desarrollar una funcion que me permita escribir en la celda actual la traduccion de un numero a texto, pero cuando llamo a la funcion desde una celda en excel =num(1,1), recibo el siguiente mensaje:

Código PHP:
Advertencia de referencia circular.
Una o mas formulas contienen una referencia circular y no se puede calcular correctamenteLas referencias circulares son las referencias incluidas en una formula que dependen de los resultados de esa misma formula
y luego resultado 0 en la celda


Esta es mi funcion que necesito que escriba en la celda activa.
Gracias, alguien me puede ayudar a solucionar el problema.
Código:
Function num(numero As Double)
Select Case numero

Case 1.1
    ActiveCell.Value = "Es n uno punto uno"

End Select

End Function
  #2 (permalink)  
Antiguo 19/10/2015, 01:40
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: Escribir en celda activa desde macro excell

No deberías tratar de escribir sobre la celda activa, sino devolver el valor deseado:

Código vb:
Ver original
  1. Function num(numero As Double)
  2.     Select Case numero
  3.         Case 1.1
  4.             ' Asignar el valor de retorno en lugar de escribir en la celda
  5.            num = "Es n uno punto uno"
  6.     End Select
  7. End Function
__________________
- León, Guanajuato
- GV-Foto

Etiquetas: excel
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:32.