Pondělí, 29, březen 2021
  0 Odpovědi
  2.8 tis. Návštěv
0
Hlasy
Zrušit
Ahoj, používám váš kód k odeslání rozsahu v excelu e-mailem. Pokud zruším rozsah, zobrazí se chyba běhu. Je možné přidat nějaký kód nebo msgbox, aby se tomu zabránilo a také automatické přizpůsobení sloupců v příloze. Část kódu je níže
Díky/media/kunena/emoticons/smile.png

Dim xFile As String
Dim xFormat As Long
Dim Wb jako sešit
Dim Wb2 jako sešit
Dim Ws jako pracovní list
Dim FilePath jako řetězec
Dim název_souboru jako řetězec
Ztlumit aplikaci OutlookApp jako objekt
Ztlumit OutlookMail jako objekt
Dim WorkRng As Range
xTitleId = "Příklad"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)

Application.ScreenUpdating = False
Application.DisplayAlerts = False
Nastavte Wb = Application.ActiveWorkbook
Wb.Worksheets.Add
Nastavit Ws = Application.ActiveSheet
WorkRng.Copy Ws.Cells(1, 1)
Ws.Copy
Nastavte Wb2 = Application.ActiveWorkbook
Vyberte Case Wb.FileFormat
Pouzdro xlOpenXMLWorkbook:
    xFile = ".xlsx"
    xFormat = xlOpenXMLWorkbook
Case xlOpenXMLWorkbookMacroEnabled:
    Pokud Wb2.HasVBProject Then
        xFile = ".xlsm"
        xFormat = xlOpenXMLWorkbookMacroEnabled
    Jiný
        xFile = ".xlsx"
        xFormat = xlOpenXMLWorkbook
    End If
Případ Excel8:
    xFile = ".xls"
    xFormat = Excel8
Případ xlExcel12:
    xFile = ".xlsb"
    xFormat = xlExcel12
Konec Vybrat
Na tento příspěvek zatím nebyly učiněny žádné odpovědi.