Segunda-feira, 29 2021 Março
  0 Respostas
  2.9 mil visitas
0
Votos
desfazer
Oi estou usando seu código para enviar um intervalo no excel por e-mail. Se eu cancelar o intervalo, recebo um erro de tempo de execução. É possível adicionar algum código ou msgbox para evitar isso, por favor, e também para ajustar automaticamente as colunas no anexo. Parte do código está abaixo
obrigado/media/kunena/emoticons/smile.png

Dim xArquivo como String
Dim xFormat por muito tempo
Dim Wb como pasta de trabalho
Dim Wb2 como pasta de trabalho
Dim Ws como planilha
Dim FilePath como String
Dim FileName como string
Dim OutlookApp como objeto
Dim OutlookMail como objeto
Dim WorkRng como intervalo
xTitleId = "Exemplo"
Se WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)

Application.ScreenUpdating = False
Application.DisplayAlerts = False
Definir Wb = Application.ActiveWorkbook
Wb.Planilhas.Adicionar
Definir Ws = Application.ActiveSheet
WorkRng.Copy Ws.Cells(1, 1)
Ws.Cópia
Definir Wb2 = Application.ActiveWorkbook
Selecionar caso Wb.FileFormat
Caso xlOpenXMLWorkbook:
    xArquivo = ".xlsx"
    xFormat = xlOpenXMLWorkbook
Caso xlOpenXMLWorkbookMacroEnabled:
    Se Wb2.HasVBProject Então
        xArquivo = ".xlsm"
        xFormat = xlOpenXMLWorkbookMacroEnabled
    Outro
        xArquivo = ".xlsx"
        xFormat = xlOpenXMLWorkbook
    Se acabar
Caso Excel8:
    xArquivo = ".xls"
    xFormato = Excel8
Caso xlExcel12:
    xArquivo = ".xlsb"
    xFormato = xlExcel12
End Select
Ainda não há respostas para esta postagem.