Ir ao conteúdo
  • Cadastre-se
antonioneto7

[EXCEL] Ajuda com código VBA "MsgBox"

Recommended Posts

Bom dia,

 

Tenho o seguinte código para exportar uma range no excel para imagem .GIF. E agora estou criando uma planilha onde ficará um "MENU", para imprimir todas as páginas que preciso, porém algumas páginas tem tamanho variável, logo não posso escolher um range específico, devo fazer uma seleção. Este comando está no código (Selection.CopyPicture Appearance:=xlScreen, Format:=xlBitmap). 

 

Contudo, gostaria de adicionar um comando para uma MsgBox que diz que o usuário precisa fazer a seleção do que quer imprimir e ao clicar OK, leva o usuário até a página que ele precisa fazer a seleção.

 

Como posso fazer isso? Qual o comando?

Sub ExportarAreaParaGif()    Dim tmpSheet As Worksheet    Dim tmpChart As Chart    Dim tmpImg As Object    Dim fGIF As String    Dim margem As Integer        On Error GoTo erro    'Seleciona a área (fixa) que deseja gerar uma imagem    'Range("V36", "AO88").CopyPicture Appearance:=xlScreen, Format:=xlBitmap    '    'Se quiser fazer gerar uma imagem à partir de uma seleção (remover ' da linha abaixo)    Selection.CopyPicture Appearance:=xlScreen, Format:=xlBitmap    'Impede que se veja a ação acelerando o procedimento de cópia e exportação    Application.ScreenUpdating = False    'Uma folha para colocarmos o grafico sem atrapalhar o resto    Set tmpSheet = Worksheets.Add    'Colocar um grafico nesta nova folha    Charts.Add    'Definições essenciais ao grafico, para que fique numa worksheet e não numa folha grafico    ActiveChart.Location Where:=xlLocationAsObject, Name:=tmpSheet.Name    'Colar a zona copiada para dentro da area do grafico    Set tmpChart = ActiveChart    With tmpChart         .Paste         Set tmpImg = Selection         With .ChartArea               .Border.LineStyle = xlNone         End With         'Configurar a area do grafico acrescentando uma pequena borda ao redor da imagem centrando esta         margem = 8         With .Parent         'Define o tamanho da imagem em Height (altura) e em Width (largura)          .Height = 948 + margem          .Width = 1450 + margem         End With    End With    'Localização e nome do ficheiro de imagem    fGIF = ThisWorkbook.Path & _          "\imagem_" & Format(Now, "mm_yyyymmdd_hhmmss") & ".gif"    'Exportar grafico    tmpChart.Export Filename:=fGIF, FilterName:="gif"    'Eliminar a folha temporaria sem avisos    Application.DisplayAlerts = False    tmpSheet.Delete    Application.DisplayAlerts = True    'Repor o estado normal    Application.ScreenUpdating = True    'Aviso de operação terminada    MsgBox "Imagem exportada para o ficheiro:" & fGIF, _           vbInformation, _           "Exportar para GIF"    GoTo fimerro:    MsgBox "Erro: " & Err.Description, _            vbCritical, _           "Erro: " & Err.Numberfim:    Set tmpSheet = Nothing    Set tmpChart = Nothing    Set tmpImg = NothingEnd Sub

Obrigado :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×