Podeis ayudarme.
Gracias anticipadas.
Xavier
activecell.interior.color=[aqui el color deseado, puede ser expresado en
valores RGB[red,green,blue],o usar las constantes de color de Visual
Basic[VbRed,Vbcyan,Vbwhite,VbBlack,etc.] o tomado de la constante
.colorindex, en cuyo caso sería activecell.interior.colorindex=n, donde n es
el indice del color dentro de la tabla de colores.]
Para colorear una celda constante:
range(col,fila).interior.color=[aqui el color deseado, puede ser expresado
en valores RGB[red,green,blue],o usar las constantes de color de Visual
Basic[VbRed,Vbcyan,Vbwhite,VbBlack,etc.] o tomado de la constante
.colorindex, en cuyo caso sería activecell.interior.colorindex=n, donde n es
el indice del color dentro de la tabla de colores.]
Para colorear la celda activa con un color aleatorio puedes usar la
siguiente función:
Sub rand_color()
Dim red As Integer
Dim blue As Integer
Dim green As Integer
red = Application.WorksheetFunction.RandBetween(0, 255)
blue = Application.WorksheetFunction.RandBetween(0, 255)
green = Application.WorksheetFunction.RandBetween(0, 255)
ActiveCell.Interior.Color = RGB(red, green, blue)
End Sub
de como eligas los criterio con lo que seleccionar la celda depende
completamente de tí.
saludos
--
--
--
Tambien puedes visitar
--
Walter R . [zz]
<x.ma...@gmail.com> wrote in message
news:1181853699....@j4g2000prf.googlegroups.com...
Saludos
Xavier
zz ha escrit:
--
--
--
Tambien puedes visitar
--
Walter R . [zz]
<x.ma...@gmail.com> wrote in message
news:1181887089.6...@o11g2000prd.googlegroups.com...
ActiveCell.Comment.Delete
si no tienes seleccionada la celda:
range("a1").comment.delete
--------^--cambiar aqui la referencia de la celda.
saludos.
--
--
--
Tambien puedes visitar
--
Walter R . [zz]
<x.ma...@gmail.com> wrote in message
news:1181887089.6...@o11g2000prd.googlegroups.com...
Hola Walter,
Desde tu mensaje he dado vueltas y vueltas para obtener mi objetivo.
Te informo que gracias a este foro, y a mi perseverancia, he
conseguido parte de mis objetivos.
Te acompaño la parte del mensaje dónde puedo colorear el rango
seleccionado, además de la
función de añadir un comentario en la primera celda del rango
seleccionado.
Sub Macro5()
Dim Celda_color As Range
For Each Celda_color In Selection
With Selection.Interior
.ColorIndex = 38
.Pattern = xlSolid
End With
Next
Call Añadir_comentario
End Sub
Private Sub Añadir_comentario()
Dim Celda_coment As String
With ActiveCell
If Not .Comment Is Nothing Then Exit Sub
Celda = .Address
.AddComment ""
.Comment.Visible = True
ActiveSheet.Shapes(.Comment.Shape.Name).Select
SendKeys " {bs}"
Application.OnTime Now, "Ocultar_comentario"
End With
End Sub
Private Sub Ocultar_comentario()
ActiveCell.Comment.Visible = False
End Sub
Ahora el problema lo tengo con la sub Ocultar_comentario.
Resulta que para ocultar el cuadro de diálogo del comentario tengo que
volver a seleccionar la celda dónde estoy
añadiendo el comentario. Busco la forma de poder de cerrar el
comentario seleccionando
cualquier celda de la hoja y no obligarme el seleccionar la celda del
comentario.
Estoy buscando por el foro la forma de hacerlo, no obstante, si
conoces la forma de hacerlo te agradeceria tu
colaboración.
Saludos Cordiales y gracias de antemano por tu colaboración.
Xavier
quizá, y sólo como sugerencia, pudieras hacer uan ligera modificación al
procedimiento
>Private Sub Ocultar_comentario()
>ActiveCell.Comment.Visible = False
>End Sub
como lo tienes siempre te va a ocultar el comentario de la celda activa,
deberías tener una manera de discernir cual o que comentario quieres
ocultar, sin embargo si te interesa ocultar sólo el último comentario:
declara una variable global en tu procedimiento
Dim LastCell as string
Private Sub Añadir_comentario()
Dim Celda_coment As String
With ActiveCell
LastCell=activecell.address ' colocas el nombre de la ultima celda activa
If Not .Comment Is Nothing Then Exit Sub
Celda = .Address
.AddComment ""
.Comment.Visible = True
ActiveSheet.Shapes(.Comment.Shape.Name).Select
SendKeys " {bs}"
Application.OnTime Now, "Ocultar_comentario"
End With
End Sub
y en el procedimiento de "ocultamiento" del comentario:
Private Sub Ocultar_comentario()
range(LastCell).Comment.Visible = False
End Sub
espero que te sirva.
--
--
--
Tambien puedes visitar
--
Walter R . [zz]
<x.ma...@gmail.com> wrote in message
news:1182804378.1...@j4g2000prf.googlegroups.com...