Se pretendermos associar o conteúdo de várias células numa única e com algum texto em negrito e em maiúscula, podemos utilizar este tipo de código: Sub Concat() Dim i As Long, LR As Long, j As Long LR = Range(“B” & Rows.Count).End(xlUp).Row For i = 2 To LR With Range(“G” & i) .Value = Join(Application.Transpose(Application.Transpose(.Offset(, -5).Resize(, 5))), vbNullString) …
Read More »VBA: Registar automaticamente o nome do último utilizador e data e hora
Private Sub Workbook_Open() Dim ExcelLastSavedBy As String Dim dInput As String ExcelLastSavedBy = ThisWorkbook.BuiltinDocumentProperties(“Last Author”) dInput = ActiveWorkbook.BuiltinDocumentProperties.Item(“Last Save Time”) Sheets(3).Range(“G” & Rows.Count).End(xlUp).Offset(1, 0).Value = ExcelLastSavedBy & ” – ” & dInput ThisWorkbook.Save End Sub
Read More »VBA: Copiar Range de outro Workbook
Se pretendermos copiar um Range de uma Worksheet de outro Workbook, Range esse que deve terminar na linha anterior à 1ª linha vazia existente, podemos utilizar o seguinte código: Sub Insere() ‘————————————————————————————— ‘ Procedimento : Insere ‘ Autor : JORGEROD ‘ Data : 15-11-2018 ‘ Propósito : Copia os valores de final do dia, provenientes de outro Workbook ‘————————————————————————————— Dim …
Read More »Inserir linha(s) com duplo clique
‘————————————————————————————— ‘ Procedure : Worksheet_BeforeDoubleClick ‘ DateTime : 17-04-2017 23:55 ‘ Author : Jorge Rodrigues ‘ Purpose : Duplo clique para indicar o número de linhas a inserir abaixo da célula activa ‘ : Mantém a formatação da linha a copiar, limpando os dados ‘ : Desprotege Worksheet e volta a protegê-la ‘————————————————————————————— ‘ Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, …
Read More »VBA: Utilização de User-Defined Data Type
Se pretendermos preencher linhas sequencialmente (nas colunas B e C) com dados, que poderemos digitar a partir de InputBoxs, como no exemplo: uma via poderá ser fazê-lo através do seguinte código, associado a um botão de comando:
Read More »