Ver Mensaje Individual
  #4 (permalink)  
Antiguo 24/02/2006, 06:08
potypoty
 
Fecha de Ingreso: noviembre-2005
Mensajes: 170
Antigüedad: 18 años, 5 meses
Puntos: 1
Aquí tienes el código:
Dim Direccion As String

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
If ActiveSheet.Name = "Calculos" Then
Direccion = ActiveCell.Address
End If
End Sub

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If ActiveSheet.Name = "Calculos" And Direccion="$G$5" And Range("G5").Value <= 0 then
Range("G5").AddComment
Range("G5").Comment.Visible = False
Range("G5").Comment.Text Text:="Número" & Chr(10) & "negativo" & Chr(10) & ""
Elseif ActiveSheet.Name = "Calculos" And Direccion="$G$5" And Range("G5").Value > 0 then
Range("G5").Select
Selection.ClearComments
End If
End Sub

Este código hace lo siguiente:
1ª función: Si se produce un cambio de selección de celda,es decir, si seleccionas una celda y si la página en la que estás se llama "Calculos" copia las coordenadas de la celda que has seleccionado en la varible "Direccion".

2ª función:Si se produce un cambio en el contenido de alguna celda, si la página en la que estás se llama "Calculos", si la direccion de esa celda es "G5" y si el valor es menor que 0 crea en "G5" un comentario con el texto "Numero" y en la línea de abajo "negativo". El Chr(10) corresponde al intro.
Si el valor es mayor que 0, quita el comentario.

Lo siento pero no lo he probado tal y como te lo mandado, te mando esto para que pruebes un poco. Debes copiarlo en "ThisWorkbook" que está al final de las hojas en la ventana de código de Visual.

Espero que te funcione , pero si no es así coméntamelo. Debo decirte que esta tarde no voy a tener mucho tiempo y con el fin de semana que viene, pues................... hasta la semana que viene no podré echarle un vistazo.

Un saludo
__________________
El sabio no dice nunca todo lo que piensa,
pero siempre piensa todo lo que dice.
Aristóteles :pensando: