De acordo com os dois posts anteriores, torna-se evidente que, usando o evento Worksheet_BeforeDoubleClick, será também possível mostrar mais do que um Userform: Se fizermos duplo clique numa das células do Range A1:A5, o resultado será: Se fizermos duplo clique numa das células do Range B1:B5, o resultado será: O Código: Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) …
Read More »Inserir Comentários em Células
Para inserir o mesmo Comentário em várias células de um determinado Range: Pode utilizar-se (adaptado ao/aos Ranges pretendidos) o seguinte Código: Private Sub Worksheet_Change(ByVal Target As Range) ' Macro para criar um Comentário numa célula Dim rng1 As RangeDim MyCommentDim Cell As RangeMyComment = "Comentário:" & Chr(10) & "Isto é um Teste!" Set rng1 = Intersect(Range("a1:a5"), Target) If Not rng1 …
Read More »Ainda o Comentário
Uma outra abordagem para a inclusão de comentários num determinado Range de células: o exemplo tem a ver com a apresentação, no comentário, da data e da hora da modificação do conteúdo da célula, ou seja, sempre que uma célula do Range é alterada, a data e a hora são actualizadas. O Código: Private Sub Worksheet_Change(ByVal Target As Range) On Error …
Read More »Enviar dados do Excel para o WinWord
Por vezes, temos necessidade de enviar dados de uma folha do Excel para um determinado documento do Word. O exemplo a seguir, mostra um botão de comando que, ao ser pressionado, envia os dados do Range A1:B3 para um novo documento do Word. O Código: Private Sub CommandButton1_Click() Dim MSWord As Object Worksheets("sheet1").Range("A1:B3").Copy Set MSWord = CreateObject("Word.Application") MSWord.Visible = True MSWord.ScreenUpdating = …
Read More »Linha em Rodapé para impressão
Dick Kusleika (Daily Dose of Excel) mostrou, há algum tempo num newsgroup de excel, como colocar uma linha no rodapé, para impressão: Sub LinhaRodape() Dim sh As Worksheet Dim wf As WorksheetFunction Set sh = ActiveSheet Set wf = Application.WorksheetFunction sh.PageSetup.LeftFooter = wf.Rept("_", 88) & _ vbLf & sh.PageSetup.LeftFooter End Sub NOTA – o valor 88 é modificável pelo tamanho da zona de …
Read More »