как отправлять отфильтрованные данные по электронной почте - PullRequest
0 голосов
/ 16 июня 2020

Я проверил несколько других вопросов, связанных с этой проблемой, и не могу понять, где я ошибся, если кто-то может мне помочь. У меня есть макрос Reported, который отфильтровывает данные, которые мне не нужно передавать. Остальные затем следует выбрать и разослать по электронной почте. Проблема в том, что соответствующие данные отправляются по электронной почте как пустые.

Sub SendCONSULTANT()
    Reported
    Dim OLApp           As OUTLOOK.Application
    Dim OLMail          As Object
    Dim sFileName       As String
    Dim name As String
    Dim todaydate As String


    name = Sheets("Accepting List").Range("b8").Value
    todaydate = Format(CStr(Now), "DDDD D MMMM YYYY")
    sFileName = "\" & "Outstanding Cases " & todaydate & _
    ".xlsx"

    Set OLApp = New OUTLOOK.Application
    Set OLMail = OLApp.CreateItem(0)
    Application.DisplayAlerts = False
    ActiveSheet.Range("B6:n68").SpecialCells(xlCellTypeVisible).Copy
    Workbooks.Add

    With Range("A1")
        .PasteSpecial xlPasteValuesAndNumberFormats
        .PasteSpecial xlPasteColumnWidths
        .PasteSpecial xlPasteFormats
    End With

    ActiveWorkbook.SaveAs ThisWorkbook.Path & sFileName

    OLApp.Session.Logon

    With OLMail
        .To = "******@*****.com"
        .CC = ""
        .BCC = ""
        .Subject = "Outstanding CT Cases"
        .Body = "Hello" & vbNewLine & vbNewLine & "Please find attached an extract of all outstanding cases that may require reporting" & vbNewLine & vbNewLine & "Kind Regards" & vbNewLine & vbNewLine
        .Attachments.Add (ThisWorkbook.Path & sFileName)
        .Display
        .Send
    End With

    ActiveWorkbook.Close SaveChanges:=True
    Kill ThisWorkbook.Path & sFileName

    Set OLMail = Nothing
    Set OLApp = Nothing
    Application.DisplayAlerts = True
    Reportedrestore
End Sub

Если кто-нибудь может сказать мне, почему не работает выделение видимых ячеек, я был бы очень благодарен

1 Ответ

0 голосов
/ 16 июня 2020

Чтобы убедиться, что ваши изменения сохранены в файле, вы можете попробовать открыть его на диске, наблюдая за содержимым файла.

Метод Workbooks.Add создает новую книгу, объект Workbook, представляющий новую книгу, возвращается обратно. Итак, я бы предложил использовать этот объект для вставки данных и сохранения на диск.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...