Inquiridor
Comentar célula

Pergunta
-
Boa tarde!!
Gostaria de adicionar um comentário a um conjunto de células. Eu já fiz o código que deve ser feito, porém é necessário uma condição para que isto ocorra. Primeiro o código, que eu já fiz.
Sub AddComentario() Dim txt As String txt = Sheets("plan1").Range("B10").Value 'só avança caso haja conteudo para o comentário If Len(txt) = 0 Then Exit Sub With Sheets("plan2").Range("E66") On Error Resume Next 'eliminar comentário caso exista .Comment.DELETE 'Adicionar novo .AddComment 'Estado do comentário .Comment.Visible = False 'Inserir texto .Comment.Text Text:=txt End With End Sub
No caso acima estou fazendo só para a célula E66 da plan2!!! Mas na verdade preciso fazer isto desde a célula E66 até a a célula AB120 OU SEJA, Sheets("plan2").Range("E66:AB120").
E o comentário ( que esta na célula B10 da plan1), só deve ser inserido nesse Range, caso o valor de cada célula deste Range seja 1.
Por exemplo.... Se neste Range E66:AB120, as céulas E80:AB90 tiverem valor 1 e as demais 0, somente as células E80:AB90, devem receber o comentário.
Estava pensando em fazer com if comparando se é 1 escreve, mas daria muito trabalho... Deve ter um modo mais fácil, que eu não sei fazer. Me ajudem! Agradeço desde já!! Abraço!!
Todas as Respostas
-
Sub fAddComment() Dim rng As Excel.Range For Each rng In ThisWorkbook.Worksheets("Plan1").Range("E66:AB120").Cells If rng.Value = 1 Then rng.Comment.Delete rng.AddComment "Valor igual a 1!" End If Next rng End Sub
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
-
Sub fAddComment() Dim rng As Excel.Range Dim txt As String For Each rng In ThisWorkbook.Worksheets("plan1").Range("E5:DF5").Cells If rng.Value = 1 Then Select Case ActiveSheet.Range("B10").Value Case 1: txt = "a" Case 2: txt = "b" Case 3: txt = "c" Case 4: txt = "d" End Select rng.AddComment (txt) End If Next rng End Sub
Tentei fazer isso para inserir no comentario a,b,c ou d dependendo do valor de B10, mas não funcionou.. alguma ajuda Felipe? Obrigado! -
Deu certo Felipe!!! Preciso alterar mais algumas coisas aqui para ver se fica do jeito que eu preciso! Mas por enquanto está correndo bem!! Obrigado pela ajuda!! Só uma coisa queria aumentar o tamanho da tela do comentário. Usei o botão que grava macro e aumentei manualmente para ver como era.. apareceu este código mas não funcionou. Alguma sugestão?
Range("V5").Select Range("V5").Comment.Text Text:="c" Selection.ShapeRange.ScaleWidth 1.88, msoFalse, msoScaleFromTopLeft Selection.ShapeRange.ScaleHeight 0.5, msoFalse, msoScaleFromTopLeft Selection.ShapeRange.ScaleHeight 1.82, msoFalse, msoScaleFromBottomRight Selection.ShapeRange.Flip msoFlipVertical Range("V6").Select
Claro que só vale para a celula V5, mas nem ela aumentou de tamanho..
- Editado Mmbr terça-feira, 11 de fevereiro de 2014 23:12 erro digitção