Guia do Excel

API's do Windows no Excel com VBA

MR
Marcos Rieper

Especialista em Excel

Atualizado em 08 de julho de 2026 Publicado em 08 de março de 2011 2 min de leitura

Objetivo: Demonstrar como utilizar funcionalidades do Windows no Excel á partir do VBA.

Apesar de tudo o que pode ser feito com programação algumas coisas são muito difíceis de serem implementadas diretamente. Para isso utiliza-se na maioria das vezes as API's do Windows.

API -> Applications Programming Interface. É um conjunto de interfaces de programação que permitem a utilização de bibliotecas de programação Windows em programas externos ao sistema operacional.

Abaixo algumas das principais bibliotecas disponibilizadas:

Arquivo DLLDescrição
KERNEL32Gerencia a memória ; multitarefa...
USER32Gerencia mensagens , menus, cursores, comunicações, etc...
GID32Graphics Device Interface - Recursos de desenho , telas e objetos , redimensionamentos...
COMDL32Janelas comuns : impressão , salvar , abrir, ...
WINMMRecursos multimídia, som , video, ...
Lz32Rotinas de compressão e compactação

Abaixo o código fonte de um exemplo uma API que descobre qual é a resolução de vídeo atual do computador e sugere que seja alterada caso não seja a melhor visualização para o programa:


'Esta declaração deve ficar antes de qualquer sub ou function, caso contrário não funcionará
Declare Function DisplaySize Lib "user32" Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long

'Identifica a resolução do sistema operacional
Function VideoRes() As String
    Dim vidWidth
    Dim vidHeight

    'Chamada da API do Windows que identifica a resolução da tela
    vidWidth = DisplaySize(0)
    vidHeight = DisplaySize(1)

    Select Case (vidWidth * vidHeight)
        Case 307200
            VideoRes = "640 x 480"
        Case 480000
            VideoRes = "800 x 600"
        Case 786432
            VideoRes = "1024 x 768"
        Case 1024000
            VideoRes = "1280 x 800"
        Case Else
            VideoRes = "Outra resolução"
    End Select
End Function

'Sub que faz uso da function que identifica a resolução para determinar se ela é adequada
Sub CheckDisplayRes()
    Dim VideoInfo As String
    Dim Msg1 As String, Msg2 As String, Msg3 As String

    VideoInfo = VideoRes

    Msg1 = "A resolução atual está configurada em " & VideoInfo & Chr(10)
    Msg2 = "A melhor resolução para essa aplicação é 1024 x 768" & Chr(10)
    Msg3 = "Ajuste a resolução"

    Select Case VideoInfo
        Case "640 x 480"
            MsgBox Msg1 & Msg2 & Msg3
        Case "800 x 600"
            MsgBox Msg1 & Msg2
        Case "1024 x 768"
            MsgBox Msg1
        Case "1280 x 800"
            MsgBox Msg1 & Msg2
        Case Else
            MsgBox Msg2 & Msg3
    End Select
End Sub
Material gratuito

Planilha de Controle Financeiro no Excel

Tenha um controle bonito e completo do seu financeiro.

  • Categorias e subcategorias já configuradas
  • Planilhas separadas por tabela (configuração, lançamentos, resumo)
  • Personalize com suas próprias categorias e ícones

Baixe grátis — receba o link no seu e-mail

Download — baixe aqui: API's do Windows
API's do Windows15 KB · Excel 2010 ou superior · com macrosPreencha seus dados para receber o link de download no seu e-mail.

Até a próxima

Marcos Rieper

Este conteúdo foi útil?

Continue lendo