Saltar para o conteúdo
Consultoria · Automação · Dados · Digital

Category Archive Funções/ Macro / VBA

Conhece a Função Rank, Ordem?

Conhece a Função Rank, Ordem?

RANK-246x300 Conhece a Função Rank, Ordem?


Exportar Ficheiro Excel para PDF (VBA)

Código/Macro VBA:

Exportar o ficheiro para PDF de forma automática.

Neste caso a exportação para PDF não contempla os links nem indices, o Excel na exportação para PDF não funciona como o Microsoft Word. Para poder exportar com links tem de se ter o Acrobat Pro instalado e o ADD IN adicionado.

O ficheiro é guardado na pasta de documentos do utilizador que estiver com login no momento.

EXPORTTOPDF-300x191 Exportar Ficheiro Excel para PDF (VBA)

Uso da Função DateDiff

Calcule o número de dias, meses ou anos entre duas datas.

DATE_DIFF-300x108 Uso da Função DateDiff

Criar um Backup de Ficheiro Excel de Forma Automática

Cria um ficheiro de backup, com a data do mesmo e guarda no directório/pasta do ficheiro original.

Exemplo:  Original: Backup.xlsm

Cópia:  Cópia_28-05-2017Backup.xlsm

Pode correr a macro/código pelo separador Programador e depois opção Macro, como se mostra a seguir.

MACRO_BACKUP_FILE-300x122 Criar um Backup de Ficheiro Excel de Forma Automática

MACRO_VBA_BACKUP_FILE-300x81 Criar um Backup de Ficheiro Excel de Forma Automática

MACRO_BUTTON_BACKUP_FILE-300x69 Criar um Backup de Ficheiro Excel de Forma Automática

Ou pode adicionar, personalizar um botão  na barra e personalizar o mesmo, como se mostra a seguir.

MACRO_BUTTON_BACKUP_FILE-1-300x69 Criar um Backup de Ficheiro Excel de Forma Automática

Enviar Emails com ficheiro comprimido como anexo quando estiver na Data Actual (VBA)

Pretende-se com este código que quando a Data de Envio for igual a data em que nos encontramos é enviado um email ao destinatário.

O código pesquisa todos os registos e envia para cada email onde a condição da data for a data actual.

ZIP_EMAIL-300x188 Enviar Emails com ficheiro comprimido como anexo quando estiver na Data Actual (VBA)
ZIP_EMAIL_2-300x183 Enviar Emails com ficheiro comprimido como anexo quando estiver na Data Actual (VBA)
ZIP_EMAIL_1-300x156 Enviar Emails com ficheiro comprimido como anexo quando estiver na Data Actual (VBA)

VBA Code/Macro:

Sub SendEmail()

Dim ws As Worksheet
Dim oApp As Object, MailApp As Object, SendMail As Object
Dim strbody As String
Dim deldate As Variant
Dim email As Variant
Dim i As Integer

Set ws = Worksheets(“sheet1”)
ws.Select

‘Set numrows = number of rows of data.
NumRows = Range(“A2”, Range(“A2”).End(xlDown)).Rows.Count

‘ Select cell A2
Range(“A2”).Select

‘Get Delivery date
lin = 2
col = 4
deldate = ws.Cells(lin, col).Value

‘Get email
lin = 2
col = 7
email = ws.Cells(lin, col).Value
‘ -1 because sheet have header
For i = 1 To NumRows – 1

If deldate = Date Then

‘Create Email
Set MailApp = CreateObject(“Outlook.Application”)
Set SendMail = MailApp.CreateItem(0)
‘Conteudo corpo da mensagem
strbody = “Your require thing has been delivered … ” & vbNewLine & vbNewLine & _
“Thanks” & vbNewLine & _
“…”

On Error Resume Next
With SendMail
.To = email ‘<- Email to send
.CC = “”
.BCC = “”
.Subject = “Your require thing has been delivered …”
.Body = strbody ‘<- Body message
.Send ‘ .Display <- Before send email to client show
‘ .send <- Send Email direct
End With
Else: Exit Sub
End If
ActiveCell.Offset(lin + i, 0).Select
deldate = ws.Cells(lin + i, 4).Value
email = ws.Cells(lin + i, 7).Value
Next

End Sub

Como Excluir Linhas Duplicadas no Excel com VBA (Passo a Passo)

_CODE_DELETEDUPLICATEDLINES Como Excluir Linhas Duplicadas no Excel com VBA (Passo a Passo)

Public Sub DeleteDuplicatedLines()
‘***************************************
‘*** Code to Remove Duplicated Lines ***
‘***** E-Mail: clico.tech@gmail.com  ******
‘***************************************
Dim r As Long
Dim C As Range
Dim N As Long
Dim V As Variant
Dim Rng As Range

On Error GoTo Erro
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual

If Selection.Rows.Count > 1 Then
Set Rng = Selection
Else
Set Rng = ActiveSheet.UsedRange.Rows
End If

N = 0
For r = Rng.Rows.Count To 1 Step -1
V = Rng.Cells(r, 1).Value
If Application.WorksheetFunction.CountIf(Rng.Columns(1), V) > 1 Then
Rng.Rows(r).EntireRow.Delete
N = N + 1
End If
Next r

Erro:

Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic

End Sub

Criar ListBox Excel VBA

Criar uma List Box em Excel usando o Editor VBA, experimente 🙂
Creating a Listbox using Excel VBA Editor, try it 🙂

 

_LISTBOX Criar ListBox Excel VBA

Hiperlinks VBA Excel

Criar Hiperlinks com VBA Excel:
1. Abra uma folha de Excel
2. Carregue em Alt+F11 para abrir o editor de VBA
3. Insira um novo módulo
4. Copie o código que se segue e cole na janela de codigo
5. Carregue em F5 para executar
6. Verifique que o link foi adicionado a célula A4

Create Hiperlinks with Excel VBA;
1. Open an excel workbook
2. Press Alt+F11 to open VBA Editor
3. Insert a New Module
4. Copy the above code and Paste in the code window
5. Press F5 to execute it
6. You can see a new hyperlink is added at A4

Sub CreateHyperLink()
ActiveSheet.Hyperlinks.Add Range(“A4”), “https://clicotech.blogspot.pt/”
End Sub

_CRIAR_LINK Hiperlinks VBA Excel

Função ARRED – Arredondamento

Função ARRED – Arredondamento
Conhece?

_ARREDONDAMENTO Função ARRED - Arredondamento

Macro/Função para Formatar Datas

Macro/Função para Formatar Datas.

_FORMAT_DATES Macro/Função para Formatar Datas
Show Buttons
Hide Buttons