Note: The other languages of the website are Google-translated. Back to English

Jak wstawić podpis programu Outlook podczas wysyłania wiadomości e-mail w programie Excel?

Przypuśćmy, że chcesz wysłać wiadomość e-mail bezpośrednio w programie Excel, jak dodać domyślny podpis programu Outlook w wiadomości e-mail? W tym artykule przedstawiono dwie metody ułatwiające dodawanie podpisu programu Outlook podczas wysyłania wiadomości e-mail w programie Excel.

Wstaw podpis do wiadomości e-mail programu Outlook podczas wysyłania przez Excel VBA
Z łatwością wstaw podpis programu Outlook podczas wysyłania wiadomości e-mail w programie Excel za pomocą niesamowitego narzędzia

Więcej samouczków dotyczących wysyłania wiadomości w programie Excel ...


Wstaw podpis do wiadomości e-mail programu Outlook podczas wysyłania przez Excel VBA

Na przykład w arkuszu znajduje się lista adresów e-mail, aby wysyłać wiadomości e-mail na wszystkie te adresy w programie Excel i dodawać domyślny podpis programu Outlook w wiadomościach e-mail. Aby to osiągnąć, zastosuj poniższy kod VBA.

1. Otwórz arkusz zawierający listę adresów e-mail, do których chcesz wysłać wiadomość e-mail, a następnie naciśnij inny + F11 klawiatura.

2. W otwarciu Microsoft Visual Basic for Applications okno, kliknij wstawka > Moduł, a następnie skopiuj poniższe VBA2 do okna kodu modułu.

3. Teraz musisz wymienić .Ciało wyrysować VBA2 z kodem w formacie VBA1. Następnie przesuń linię .Pokaz pod linią Dzięki xMailOut.

VBA 1: Szablon wysyłania wiadomości e-mail z domyślnym podpisem programu Outlook w programie Excel

.HTMLBody = "This is a test email sending in Excel" & "<br>" & .HTMLBody

VBA 2: wysyłanie wiadomości e-mail na adresy e-mail określone w komórkach w programie Excel

Sub SendEmailToAddressInCells()
    Dim xRg As Range
    Dim xRgEach As Range
    Dim xRgVal As String
    Dim xAddress As String
    Dim xOutApp As Outlook.Application
    Dim xMailOut As Outlook.MailItem
    On Error Resume Next
    xAddress = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select email address range", "KuTools For Excel", xAddress, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Application.ScreenUpdating = False
    Set xOutApp = CreateObject("Outlook.Application")
    Set xRg = xRg.SpecialCells(xlCellTypeConstants, xlTextValues)
    For Each xRgEach In xRg
        xRgVal = xRgEach.Value
        If xRgVal Like "?*@?*.?*" Then
            Set xMailOut = xOutApp.CreateItem(olMailItem)
            With xMailOut
                .To = xRgVal
                .Subject = "Test"
                .Body = "Dear " _
                      & vbNewLine & vbNewLine & _
                        "This is a test email " & _
                        "sending in Excel"
                .Display
                '.Send
            End With
        End If
    Next
    Set xMailOut = Nothing
    Set xOutApp = Nothing
    Application.ScreenUpdating = True
End Sub

Poniższy zrzut ekranu może pomóc w łatwym znalezieniu różnic po zmianie kodu VBA.

4. wciśnij F5 klucz do uruchomienia kodu. Następnie Kutools dla programu Excel wybierz okienko wyskakujące, wybierz adresy e-mail, na które będziesz wysyłać wiadomości, a następnie kliknij OK.

Następnie tworzone są e-maile. Możesz zobaczyć, że domyślny podpis programu Outlook jest dodawany na końcu treści wiadomości e-mail.

Porady:

  • 1. Możesz zmienić treść wiadomości e-mail w kodzie VBA 1 w zależności od potrzeb.
  • 2. Po uruchomieniu kodu, jeśli pojawi się okno dialogowe błędu z ostrzeżeniem, że typ zdefiniowany przez użytkownika nie jest zdefiniowany, zamknij to okno, a następnie kliknij Narzędzia > Referencje Microsoft Visual Basic for Applications okno. W otwarciu Referencje - VBAProject okno, sprawdź Biblioteka obiektów programu Microsoft Outlook i kliknij OK. Następnie ponownie uruchom kod.

Z łatwością wstaw podpis programu Outlook podczas wysyłania wiadomości e-mail w programie Excel za pomocą niesamowitego narzędzia

Jeśli jesteś nowicjuszem w VBA, tutaj bardzo polecam Wysyłać emaile użyteczność Kutools dla programu Excel dla Was. Dzięki tej funkcji możesz łatwo wysyłać wiadomości e-mail na podstawie określonych pól w programie Excel i dodawać do nich podpis programu Outlook. Wykonaj następujące czynności.

Przed złożeniem wniosku Kutools dla programu ExcelProszę pobierz i zainstaluj najpierw.

Po pierwsze, musisz utworzyć listę mailingową z różnymi polami, na podstawie których będziesz wysyłać e-maile.

Możesz ręcznie utworzyć listę mailingową według potrzeb lub zastosować funkcję Utwórz listę mailingową, aby szybko to zrobić.

1. kliknij Kutools Plus > Utwórz listę mailingową.

2. w Utwórz listę mailingową W oknie dialogowym określ potrzebne pola, wybierz miejsce, w którym chcesz wyprowadzić listę, a następnie kliknij OK przycisk.

3. Teraz tworzona jest próbka listy mailingowej. Ponieważ jest to lista przykładowa, musisz zmienić pola na określoną potrzebną zawartość. (dozwolone jest wiele wierszy)

4. Następnie zaznacz całą listę (wraz z nagłówkami), kliknij Kutools Plus > Wysyłać emaile.

5. w Wysyłać emaile Okno dialogowe:

  • 5.1) Pozycje z wybranej listy mailingowej są automatycznie umieszczane w odpowiednich polach;
  • 5.2) Zakończ treść wiadomości e-mail;
  • 5.3) Sprawdź oba pliki Wyślij e-mail przez Outlooka i Użyj ustawień podpisu programu Outlook pudła;
  • 5.4) Kliknij Wyślij przycisk. Zobacz zrzut ekranu:

Teraz e-maile są wysyłane. A domyślny podpis programu Outlook jest dodawany na końcu treści wiadomości e-mail.

  Jeśli chcesz skorzystać z bezpłatnego okresu próbnego (30-dzień) tego narzędzia, kliknij, aby go pobrać, a następnie przejdź do wykonania operacji zgodnie z powyższymi krokami.


Podobne artykuły:

Wyślij wiadomość e-mail na adresy e-mail określone w komórkach w programie Excel
Przypuśćmy, że masz listę adresów e-mail i chcesz wysłać zbiorczo wiadomość e-mail na te adresy e-mail bezpośrednio w programie Excel. Jak to osiągnąć? W tym artykule pokażemy metody wysyłania wiadomości e-mail na wiele adresów e-mail określonych w komórkach w programie Excel.

Wyślij wiadomość e-mail z kopiowaniem i wklejaniem określonego zakresu do treści wiadomości e-mail w programie Excel
W wielu przypadkach określony zakres treści w arkuszu programu Excel może być przydatny w komunikacji e-mailowej. W tym artykule przedstawimy metodę wysyłania wiadomości e-mail z wklejaniem określonego zakresu do treści wiadomości bezpośrednio w programie Excel.

Wyślij wiadomość e-mail z wieloma załącznikami w programie Excel
W tym artykule mowa o wysyłaniu wiadomości e-mail za pośrednictwem programu Outlook z wieloma załącznikami w programie Excel.

Wyślij e-mail, jeśli termin został osiągnięty w programie Excel
Na przykład, jeśli termin w kolumnie C jest mniejszy lub równy 7 dni (aktualna data to 2017/9/13), wyślij e-mail z przypomnieniem do określonego odbiorcy w kolumnie A z określoną zawartością w kolumnie B. Jak Osiągnij to? W tym artykule szczegółowo omówimy metodę VBA.

Automatycznie wysyłaj wiadomości e-mail na podstawie wartości komórki w programie Excel
Przypuśćmy, że chcesz wysłać wiadomość e-mail za pośrednictwem programu Outlook do określonego odbiorcy na podstawie określonej wartości komórki w programie Excel. Na przykład, jeśli wartość komórki D7 w arkuszu jest większa niż 200, wiadomość e-mail jest tworzona automatycznie. W tym artykule przedstawiono metodę VBA umożliwiającą szybkie rozwiązanie tego problemu.

Więcej samouczków dotyczących wysyłania wiadomości w programie Excel ...


Najlepsze narzędzia biurowe

Kutools dla programu Excel rozwiązuje większość problemów i zwiększa produktywność o 80%

  • Ponowne użycie: Szybko włóż złożone wzory, wykresy i wszystko, czego używałeś wcześniej; Szyfruj komórki z hasłem; Utwórz listę mailingową i wysyłaj e-maile ...
  • Pasek Super Formula (łatwo edytować wiele wierszy tekstu i formuły); Układ do czytania (łatwe odczytywanie i edytowanie dużej liczby komórek); Wklej do filtrowanego zakresu...
  • Scal komórki / wiersze / kolumny bez utraty danych; Podziel zawartość komórek; Połącz zduplikowane wiersze / kolumny... Zapobiegaj zduplikowanym komórkom; Porównaj zakresy...
  • Wybierz Duplikat lub Unikalny Wydziwianie; Wybierz puste wiersze (wszystkie komórki są puste); Super Find i Fuzzy Find w wielu zeszytach ćwiczeń; Losowy wybór ...
  • Dokładna kopia Wiele komórek bez zmiany odwołania do formuły; Automatyczne tworzenie odniesień do wielu arkuszy; Wstaw punktory, Pola wyboru i nie tylko ...
  • Wyodrębnij tekst, Dodaj tekst, Usuń według pozycji, Usuń przestrzeń; Tworzenie i drukowanie podsumowań stronicowania; Konwertuj zawartość komórek i komentarze...
  • Super filtr (zapisz i zastosuj schematy filtrów do innych arkuszy); Zaawansowane sortowanie według miesiąca / tygodnia / dnia, częstotliwości i innych; Specjalny filtr pogrubieniem, kursywą ...
  • Połącz skoroszyty i arkusze robocze; Scal tabele na podstawie kluczowych kolumn; Podziel dane na wiele arkuszy; Konwersja wsadowa xls, xlsx i PDF...
  • Ponad 300 zaawansowanych funkcji. Obsługuje Office / Excel 2007-2021 i 365. Obsługuje wszystkie języki. Łatwe wdrażanie w przedsiębiorstwie lub organizacji. Pełne funkcje 30-dniowa bezpłatna wersja próbna. 60-dniowa gwarancja zwrotu pieniędzy.
karta kte 201905

Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę

  • Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
  • Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
  • Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!
officetab dół
Sortuj komentarze według
Komentarze (29)
Brak ocen. Oceń jako pierwszy!
Ten komentarz został zminimalizowany przez moderatora na stronie
dziękuję bardzo, ratujesz mi życie tym szablonem :D
Ten komentarz został zminimalizowany przez moderatora na stronie
Drogi Favio,
Miło, że mogłem pomóc.
Ten komentarz został zminimalizowany przez moderatora na stronie
nie działa z załącznikami w pakiecie Office 2016
Ten komentarz został zminimalizowany przez moderatora na stronie
Drogi Chrisie,
Poniższy kod VBA może ci pomóc. Po uruchomieniu kodu wybierz komórki zawierające adresy e-mail, na które będziesz wysyłać wiadomości e-mail, a następnie wybierz pliki, które chcesz załączyć w wiadomości e-mail jako załączniki, gdy pojawi się drugie okno dialogowe. Domyślny podpis programu Outlook zostanie również wyświetlony w treści wiadomości e-mail. Dziękuję za Twój komentarz.

Sub Wyślij e-mail na adres w komórkach()
Dim xRg jako zakres
Dim xRgEach jako zakres
Dim xRgVal jako ciąg
Dim xAddress jako ciąg
Dim xOutApp jako Outlook.Application
Dim xMailOut jako Outlook.MailItem
On Error Resume Next
xAddress = ActiveWindow.RangeSelection.Adres
Ustaw xRg = Application.InputBox("Wybierz zakres adresów e-mail", "KuTools For Excel", xAddress, , , , , 8)
Jeśli xRg jest niczym, wyjdź z Sub
Application.ScreenUpdating = Fałsz
Ustaw xOutApp = CreateObject("Outlook.Application")
Ustaw xRg = xRg.SpecialCells(xlCellTypeConstants, xlTextValues)
Ustaw xFileDlg = Application.FileDialog(msoFileDialogFilePicker)
Jeśli xFileDlg.Show = -1 Wtedy
Dla każdego xRgEach w xRg
xRgVal = xRgEach.Wartość
Jeśli xRgVal Jak „?*@?*.?*” Wtedy
Ustaw xMailOut = xOutApp.CreateItem(olMailItem)
Dzięki xMailOut
.Pokaz
.To = xRgVal
.Temat = "Test"
.HTMLBody = "To jest testowa wiadomość e-mail wysyłana w programie Excel" & "
" & .HTMLBody
Dla każdego elementu xFileDlgItem w xFileDlg.SelectedItems
.Załączniki.Dodaj xFileDlgItem
Następny xFileDlgItem
'.Wysłać
Kończyć z
End If
Dalej
Ustaw xMailOut = Nic
Ustaw xOutApp = Nic
Application.ScreenUpdating = True
End If
End Sub
Ten komentarz został zminimalizowany przez moderatora na stronie
próbuję dodać podpis programu Outlook zatytułowany „domyślny”, ale nie wydaje się, aby to działało.
czy możesz mi pomóc? Uważam, że moja logika "xMailout" jest błędna. to jest mój podejrzany obszar wadliwy.

Private Sub CommandButton1_Click ()

Dim xOutApp jako obiekt
Dim xOutMail jako obiekt
Dim xMailBody jako ciąg
Dim xMailOut jako Outlook.MailItem
On Error Resume Next
Ustaw xOutApp = CreateObject("Outlook.Application")
Ustaw xOutMail = xOutApp.CreateItem(0)
xMailBody = "Pozdrowienia:" & vbNewLine & vbNewLine & _
"To jest linia 1" & vbNewLine & _
"To jest linia 2" & vbNewLine & _
"To jest linia 3" & vbNewLine & _
„To jest wiersz 4”
On Error Resume Next
Z xOutMail
.To = "E-mail.tutaj.com"
.CC = "E-mail.tutaj.com"
.Subject = "Tytuł e-maila - " & Zakres("Nr komórki").value
.Body = xMailBody
. Załączniki.Dodaj ActiveWorkbook.FullName
Ustaw xMailOut = xOutApp.CreateItem(olMailItem)
Dzięki xMailOut
.Pokaz
Kończyć z
ActiveWorkbook.Save
Przy błędzie GoTo 0
Ustaw xOutMail = Nic
Ustaw xOutApp = Nic
End Sub
Ten komentarz został zminimalizowany przez moderatora na stronie
Dzień dobry,
Twój skrypt został zmodyfikowany, spróbuj. Dziękuję Ci.

Private Sub CommandButton1_Click ()
Dim xOutApp jako obiekt
Dim xOutMail jako obiekt
Dim xMailBody jako ciąg
Dim xMailOut jako Outlook.MailItem
On Error Resume Next
Ustaw xOutApp = CreateObject("Outlook.Application")
Ustaw xOutMail = xOutApp.CreateItem(0)
xMailBody = "Pozdrowienia:" & vbNewLine & vbNewLine & _
"To jest linia 1" & vbNewLine & _
"To jest linia 2" & vbNewLine & _
"To jest linia 3" & vbNewLine & _
„To jest wiersz 4”
On Error Resume Next
Z xOutMail
.To = "E-mail.tutaj.com"
.CC = "E-mail.tutaj.com"
.Subject = "Tutaj tytuł e-maila - " & Zakres("Nr komórki").Value
.Body = xMailBody
.Attachments.Add ActiveWorkbook.FullName
Ustaw xMailOut = xOutApp.CreateItem(olMailItem)
Dzięki xMailOut
.Pokaz
Kończyć z
Kończyć z
ActiveWorkbook.Save
Przy błędzie GoTo 0
Ustaw xOutMail = Nic
Ustaw xOutApp = Nic
End Sub
Ten komentarz został zminimalizowany przez moderatora na stronie
jak dodać podpis, jeśli makro jest używane przez wielu użytkowników.
np. moje makro będzie również obsługiwane przez 3 inne osoby. Jak więc makro może używać podpisu użytkownika, który uruchamia makro.
z góry dzięki
Ten komentarz został zminimalizowany przez moderatora na stronie
Dobry dzień,
Kod VBA może automatycznie rozpoznać domyślny podpis w Outlooku nadawcy i wysłać wiadomość e-mail z własnym podpisem przez Outlooka.
Ten komentarz został zminimalizowany przez moderatora na stronie
Jeśli mój tekst główny jest połączony z pobieraniem z pól programu Excel, użycie & .HTMLBody na końcu ciągu powoduje usunięcie całego tekstu głównego i pozostawienie podpisu.
Ten komentarz został zminimalizowany przez moderatora na stronie
Mam problem z uruchomieniem tego w programie Excel 2016. Otrzymuję komunikat „Błąd kompilacji: niezdefiniowany typ zdefiniowany przez użytkownika”. Proszę pomóż!
Ten komentarz został zminimalizowany przez moderatora na stronie
Wspaniały!!!!
Ten komentarz został zminimalizowany przez moderatora na stronie
Wielkie dzięki ...
Ten komentarz został zminimalizowany przez moderatora na stronie
Cześć, potrzebuję pomocy z moim makro, muszę wstawić podpis programu Outlook pod tabelą, czy możesz mi w tym pomóc?

Private Sub CommandButton1_Click ()


Przyćmiona perspektywa jako obiekt
Przyciemnij nowy E-mail jako obiekt
Przyciemnij xSprawdź jako obiekt
Przyciemnij edytor strony jako obiekt

Ustaw perspektywę = CreateObject("Outlook.Application")
Ustaw nowy e-mail = outlook.CreateItem(0)

Z nowym e-mailem
.To = Arkusz5.Zakres("F1")
.CC = „”
.BCC = „”
.Temat = Arkusz5.Zakres("B5")
.Body = Arkusz5.Zakres("B41")
.wyświetlacz

Ustaw xInspect = newEmail.GetInspector
Ustaw pageEditor = xInspect.WordEditor

Arkusz5.Zakres ("B6:I7").Kopiuj

pageEditor.Application.Selection.Start = Długość(.Body)
pageEditor.Application.Selection.End = pageEditor.Application.Selection.Start
pageEditor.Application.Selection.PasteAndFormat (wdFormatPlainText)

.wyświetlacz
Ustaw edytor strony = Nic
Ustaw xInspect = Nic
Kończyć z

Ustaw nowy E-mail = Nic
Ustaw perspektywę = Nic

End Sub
Ten komentarz został zminimalizowany przez moderatora na stronie
Cześć Bara,
Przepraszam, nie mogę ci w tym pomóc. Dzięki za komentarz.
Ten komentarz został zminimalizowany przez moderatora na stronie
Drogi,
Czy ktoś może mi pomóc z moim VBA,
Potrzebuję podpisu w utworzonej wiadomości e-mail:
Ten komentarz został zminimalizowany przez moderatora na stronie
Dzięki tobie mogę teraz dodać podpis, ale wtedy usuwa spacje między akapitami tekstu. Proszę możesz mi pomóc ?


Sub helloworld()
Wygaś aplikację jako obiekt
Wygaś pocztę jako obiekt
Przyciemnij komórkę jako zakres
Przyciemnij ścieżkę jako ciąg
Ścieżka = Application.ActiveWorkbook.Path
Set OutApp = CreateObject("Outlook.Application")

Dla każdej komórki w zakresie ("C4:C6")
Ustaw OutMail = OutApp.CreateItem(0)
Z OutMail
.Pokaz
.To = komórka.Wartość
.Subject = Cells(cell.Row, "D").Value
.HTMLBody = "Drogi " & Cells(cell.Row, "B").Value & "," _
& vbNowaLinia & vbNowaLinia & _
"Gorące pozdrowienia" _
& vbNowaLinia & vbNowaLinia & _
„My, JK Overseas, chcielibyśmy skorzystać z okazji i przedstawić naszą firmę JK Overseas, która jest zaangażowana w biznes solny od 3 lat. Obecnie jesteśmy silni w kraju i rozwijamy się za granicą. Jesteśmy dostawcą soli jadalnej, Sól do zmiękczania wody, sól do odladzania, sól przemysłowa” i „.” _
& vbNowaLinia & vbNowaLinia & _
„Mamy powiązanie z dużymi producentami w Indiach i zapewniamy im wysokiej jakości sól i eksport. Dlatego szukamy niezawodnego importera eksperta, a także agenta dystrybutora, aby prowadzić długoterminową działalność z obopólną korzyścią” i „ ”. _
& vbNowaLinia & vbNowaLinia & _
"Prosimy o kontakt w sprawie swoich wymagań lub innych zapytań. Zapewniamy niezawodną logistykę i terminową dostawę. Jesteśmy przekonani, że nasze najbardziej konkurencyjne ceny będą odpowiadać Państwa oczekiwaniom" i "." _
& vbNowaLinia & vbNowaLinia & _
.HTMLBody

'.Wysłać
Kończyć z
Następna komórka
End Sub
Ten komentarz został zminimalizowany przez moderatora na stronie
Próbuję zintegrować ten kod z obecnym formatem, dzięki któremu jestem w stanie zautomatyzować wiadomości e-mail w programie Excel w oparciu o ustawiony zakres wartości. Jakakolwiek pomoc dotycząca tego, gdzie dodać kod „podpisu” w tym, co obecnie mam, byłaby bardzo mile widziana.

Publiczna subskrypcja CheckAndSendMail()

'Aktualizowany przez Extendoffice 2018 / 11 / 22

Dim xRgDate jako zakres

Dim xRgWyślij jako zakres

Dim xRgText jako zakres

Dim xRgDone jako zakres

Dim xOutApp jako obiekt

Dim xMailItem jako obiekt

Dim xLastRow tak długo

Dim vbCrLf jako ciąg

Dim xMailBody jako ciąg

Dim xRgDateVal jako ciąg

Dim xRgSendVal jako ciąg

Dim xMailSubject jako ciąg

Dim I tak długo

On Error Resume Next

„Proszę określić zakres terminów”

xStrRang = "D2:D110"

Ustaw xRgDate = Zakres (xStrRang)

'Proszę określić zakres adresów e-mail odbiorców

xStrRang = "C2:C110"

Ustaw xRgSend = Zakres(xStrRang)

xStrRang = "A2:A110"

Ustaw xRgName = Zakres (xStrRang)

'Określ zakres z przypomnioną treścią w swoim e-mailu

xStrRang = "Z2:Z110"

Ustaw xRgText = Zakres (xStrRang)

xLastRow = xRgDate.Rows.Count

Ustaw xRgDate = xRgDate(1)

Ustaw xRgSend = xRgSend(1)

Ustaw xRgName = xRgName(1)

Ustaw xRgText = xRgText(1)

Ustaw xOutApp = CreateObject("Outlook.Application")

Dla I = 1 To xLastRow

xRgDateVal = ""

xRgDateVal = xRgDate.Offset(I - 1)).Wartość

Jeśli xRgDateVal <> "" Wtedy

Jeśli CDate(xRgDateVal) - Data <= 30 I CDate(xRgDateVal) - Data > 0 Wtedy

xRgSendVal = xRgSend.Offset(I - 1)).Wartość

xMailSubject = „Umowa o świadczenie usług JBC wygasa w dniu” & xRgDateVal

vbCrLf = "

"

xMailBody = ""

xMailBody = xMailBody & "Dear " & xRgName.Offset(I - 1).Value & vbCrLf

xMailBody = xMailBody & " " & xRgText.Offset(I - 1).Value & vbCrLf

xMailBody = xMailBody & ""

Ustaw xMailItem = xOutApp.CreateItem(0)

Z xMailItem

.Temat = xMailTemat

.To = xRgSendVal

.CC = "mailcc@justbettercare.com"

.HTMLBody = xMailBody

.Pokaz

'.Wysłać

Kończyć z

Ustaw xMailItem = Nic

End If

End If

Dalej

Ustaw xOutApp = Nic

End Sub
Ten komentarz został zminimalizowany przez moderatora na stronie
To naprawdę pomocny kod
Muszę zmienić format tekstu z prawej na lewą w linii xOutMsg
prosimy o pomoc .
Ten komentarz został zminimalizowany przez moderatora na stronie
Próbuję wysyłać pojedyncze arkusze z programu Excel do różnych e-maili, ale dołączę tylko sam skoroszyt. Ponadto muszę mieć możliwość dodania linii podpisu. Jakakolwiek pomoc? Sub AST_Email_From_Excel()

Dim emailAplikacja jako obiekt
Przyciemnij emailItem jako obiekt

Ustaw emailApplication = CreateObject("Outlook.Application")
Ustaw emailItem = emailApplication.CreateItem(0)

' Teraz budujemy e-mail.

emailItem.to = Zakres("e2").Wartość

emailItem.CC = Zakres("g2").Wartość

emailItem.Subject = "Niezwrócony sprzęt Techquidation"

emailItem.Body = "Zobacz załączony arkusz kalkulacyjny dla niezwróconych elementów w Twojej okolicy"

'Załącz bieżący skoroszyt
emailItem.Attachments.Add ActiveWorkbook.FullName

„Załącz dowolny plik ze swojego komputera.
'emailItem.Attachments.Add ("C:\...)"

'Wyślij e-mail
'emailItem.send

'Wyświetl wiadomość e-mail, aby użytkownik mógł ją zmienić zgodnie z potrzebami przed wysłaniem
e-mailItem.Display

Ustaw emailItem = Nic
Ustaw aplikację e-mail = Nic

End Sub
Ten komentarz został zminimalizowany przez moderatora na stronie
Cześć Chris, Podany przez Ciebie kod został zmodyfikowany. Podpis programu Outlook można teraz wstawić do treści wiadomości. Proszę spróbować. Dziękuję Ci. Sub AST_Email_From_Excel()
'Aktualizowany przez Extendoffice 20220211
Dim emailAplikacja jako obiekt
Przyciemnij emailItem jako obiekt
Ustaw emailApplication = CreateObject("Outlook.Application")
Ustaw emailItem = emailApplication.CreateItem(0)

' Teraz budujemy e-mail.
emailItem.Display 'Wyświetl wiadomość e-mail, aby użytkownik mógł ją zmienić zgodnie z potrzebami przed wysłaniem
emailItem.to = Zakres("e2").Wartość
emailItem.CC = Zakres("g2").Wartość
emailItem.Subject = "Niezwrócony sprzęt Techquidation"
emailItem.HTMLBody = "Zobacz załączony arkusz kalkulacyjny dla niezwróconych elementów w Twojej okolicy" & " „ & emailItem.HTMLBody

'Załącz bieżący skoroszyt
emailItem.Attachments.Add ActiveWorkbook.FullName

Ustaw emailItem = Nic
Ustaw aplikację e-mail = Nic

End Sub
Ten komentarz został zminimalizowany przez moderatora na stronie
Cześć Crystal,Dziękuję za dodanie go w celu dodania podpisu, ale wygląda na to, że nie podoba mi się sekcja HTMLBody.Kiedy uruchamiam makro, debuguje ono w emailItem.HTMLBody = "Zobacz załączony arkusz kalkulacyjny dla niezwróconych elementów w Twojej okolicy" & " ” & emailItem.HTMLBodyand nie uzupełnia reszty.  
Ten komentarz został zminimalizowany przez moderatora na stronie
Cześć,
Z której wersji programu Excel korzystasz? Poniższy kod VBA również może pomóc. Proszę spróbować. Dziękuję za twój komentarz. Sub Wyślij arkusz roboczy()
'Aktualizuj do Extendoffice 20220218
Dim xFile jako ciąg
Przyciemnij xFormat tak długo
Dim Wb jako skoroszyt
Dim Wb2 jako skoroszyt
Dim FilePath jako ciąg
Dim FileName As String
Przyciemnij OutlookApp jako obiekt
Przyciemnij OutlookMail jako obiekt
On Error Resume Next
Application.ScreenUpdating = Fałsz
Ustaw Wb = Application.ActiveWorkbook
Aktywny arkusz.Kopiuj
Ustaw Wb2 = Application.ActiveWorkbook
Wybierz Case Wb.FileFormat
Sprawa xlOpenXMLKsiążka:
xFile = ".xlsx"
xFormat = xlOpenXMLWorkbook
Przypadek xlOpenXMLWorkbookMakroWłączone:
Jeśli Wb2.HasVBProject to
xFile = ".xlsm"
xFormat = xlOpenXMLWorkbookMacroEnabled
Więcej
xFile = ".xlsx"
xFormat = xlOpenXMLWorkbook
End If
Przypadek Excel8:
xFile = ".xls"
xFormat = Excel8
Przypadek xlExcel12:
xFile = ".xlsb"
xFormat = xlExcel12
End Select
FilePath = Środowisko$("temp") & "\"
FileName = Wb.Name & Format (teraz "dd-mmm-rr h-mm-ss")
Ustaw OutlookApp = CreateObject("Outlook.Application")
Ustaw OutlookMail = OutlookApp.CreateItem(0)
Wb2.SaveAs Ścieżka pliku i nazwa pliku i xFile, Format pliku:=xFormat
'xstr = Zakres("e2") & " ; " & Zakres("g2")
Z OutlookMail
.Pokaz
.To = Zakres("e2")
.CC = Zakres("g2")
.BCC = „”
.Subject = "Niezwrócony sprzęt Techquidation"
.HTMLBody = "Zobacz załączony arkusz kalkulacyjny dla niezwróconych elementów w Twojej okolicy" & " " & .HTMLBody
.Załączniki.Dodaj Wb2.FullName
'.Wysłać
Kończyć z
Wb2.Zamknij
Zabij ścieżkę pliku i nazwę pliku oraz xFile
Ustaw OutlookMail = Nic
Ustaw OutlookApp = Nic
Application.ScreenUpdating = True
End Sub
Ten komentarz został zminimalizowany przez moderatora na stronie
Wygląda na Excel 2016 i VBA 7.1
Ten komentarz został zminimalizowany przez moderatora na stronie
Oi Cristal, makro minha perde konfiguracji da assinatura do e-mail, com obrazy i oryginalne formatowanie. Przelicznik Como consigo?

Sub Geraremail()

Dim OLapp jako Outlook.Application
Dim Janela jako Outlook.MailItem

Ustaw OLapp = Nowy Outlook.Aplikacja
Ustaw janela = OLapp.CreateItem(olMailItem)

Arquivo01 = "Mapa AN"
Anexo01 = ThisWorkbook.Path & "\" & Arquivo01 & ".xlsm"


Z Janelą
ActiveWorkbook.Save
.Pokaz
.To = Arkusze("Baza").Zakres("A2").Wartość
.CC = Arkusze("Podstawa").Zakres("A5").Wartość
.Subject = "Mapa - Acrilo " & Format(Data, "dd.mm.rr")
assinatura = .Ciało
.Body = "Prezados/as", & Chr(10) & Chr(10) & "Pokaż załącznik lub mapę Acrilonitrila, uwzględnij jako zakupy przed S&OP." & Chr(10) & Chr(10) & assinatura
.Załączniki.Dodaj Anexo01
Kończyć z

End Sub
Ten komentarz został zminimalizowany przez moderatora na stronie
Com a mudança abaixo, consegui ajustar. Porém a letra do corpo da mensagem fica w Times New Roman. Gostaria de usar Calibri, como posso alterar o código?

Sub Geraremail()

Dim OLapp jako Outlook.Application
Dim Janela jako Outlook.MailItem

Ustaw OLapp = Nowy Outlook.Aplikacja
Ustaw janela = OLapp.CreateItem(olMailItem)

Arquivo01 = "Mapa AN"
Anexo01 = ThisWorkbook.Path & "\" & Arquivo01 & ".xlsm"


Z Janelą
ActiveWorkbook.Save
.Pokaz
.To = Arkusze("Baza").Zakres("A2").Wartość
.CC = Arkusze("Podstawa").Zakres("A5").Wartość
.Subject = "Mapa - Acrilo " & Format(Data, "dd.mm.rr")
assinatura = .Ciało
.HTMLBody = "Prezados/as", & Chr(10) & Chr(10) & "Połącz załącznik lub mapę Acrilonitrila, uwzględnij jako plany sprzedaży bez S&OP." & " " & .HTMLBody
.Załączniki.Dodaj Anexo01
Kończyć z

End Sub
Ten komentarz został zminimalizowany przez moderatora na stronie
Cześć Milla,
Poniższy kod VBA może pomóc zmienić czcionkę treści wiadomości e-mail na Calibri, spróbuj. Dziękuję Ci.
Przed uruchomieniem kodu musisz kliknąć Narzędzia > Numer Referencyjny Microsoft Visual Basic for Applications okno, a następnie sprawdź Biblioteka obiektów programu Microsoft Word pole wyboru w Referencje - VBAProject okno dialogowe, jak pokazano na zrzucie ekranu poniżej.
[img]I:\工作\周雪明\2022年工作\6月份\文章评论截图\3.png[/img]
Sub Geraremail()
Dim OLapp As Outlook.Application
Dim janela As Outlook.MailItem
Dim xDoc As Document 'Click Tools > Reference to enable the Microsoft Word Object Library
On Error Resume Next
Set OLapp = New Outlook.Application
Set janela = OLapp.CreateItem(olMailItem)
Arquivo01 = "Mapa AN"
Anexo01 = ThisWorkbook.Path & "\" & Arquivo01 & ".xlsm"
With janela
  ActiveWorkbook.Save
  .Display
  .To = Sheets("Base").Range("A2").Value
  .CC = Sheets("Base").Range("A5").Value
  .Subject = "Mapa - Acrilo " & Format(Date, "dd.mm.yy")
   assinatura = .Body
  .HTMLBody = "Prezados/as," & Chr(10) & Chr(10) & "Segue anexo o mapa de Acrilonitrila considerando as vendas previstas no S&OP." & "<br>" & .HTMLBody
  .Attachments.Add Anexo01
End With
Set xDoc = janela.GetInspector.WordEditor
xDoc.Content.Font.Name = "Calibri"
End Sub
Ten komentarz został zminimalizowany przez moderatora na stronie
Cześć Milla,
Poniższy kod VBA może pomóc zmienić czcionkę treści wiadomości e-mail na Calibri, spróbuj. Dziękuję Ci.
Przed uruchomieniem kodu musisz kliknąć Narzędzia > Numer Referencyjny Microsoft Visual Basic for Applications okno, a następnie sprawdź Biblioteka obiektów programu Microsoft Word pole wyboru w Referencje - VBAProject okno dialogowe jak załączony plik pokazany poniżej.
Sub Geraremail()
Dim OLapp As Outlook.Application
Dim janela As Outlook.MailItem
Dim xDoc As Document 'Click Tools > Reference to enable the Microsoft Word Object Library
On Error Resume Next
Set OLapp = New Outlook.Application
Set janela = OLapp.CreateItem(olMailItem)
Arquivo01 = "Mapa AN"
Anexo01 = ThisWorkbook.Path & "\" & Arquivo01 & ".xlsm"
With janela
  ActiveWorkbook.Save
  .Display
  .To = Sheets("Base").Range("A2").Value
  .CC = Sheets("Base").Range("A5").Value
  .Subject = "Mapa - Acrilo " & Format(Date, "dd.mm.yy")
   assinatura = .Body
  .HTMLBody = "Prezados/as," & Chr(10) & Chr(10) & "Segue anexo o mapa de Acrilonitrila considerando as vendas previstas no S&OP." & "<br>" & .HTMLBody
  .Attachments.Add Anexo01
End With
Set xDoc = janela.GetInspector.WordEditor
xDoc.Content.Font.Name = "Calibri"
End Sub
Ten komentarz został zminimalizowany przez moderatora na stronie
Witam, próbuję naprawić mój kod VBA. Chciałbym dołączyć jeden z moich podpisów programu Outlook z logo. Czy jest to możliwe i gdzie umieścić kod, którego obecnie używam? Każda pomoc byłaby świetna.

Sub EmailAspdf()

Przyciemnij EApp jako obiekt
Ustaw EApp = CreateObject("Outlook.Application")

Przyciemnij EItem jako obiekt
Ustaw EItem = EApp.CreateItem(0)

Dim invno As Long
Dim customname As String
Dim amt jako waluta
Dim dt_issue jako datę
Dim termin As Byte
Dim nextrec jako zakres
Ścieżka Dim As String
Dim fname As String

invn = Range("I4")
nazwa klienta = Range("A11")
amt = Zakres("I42")
dt_problem = Zakres("I6")
term = Zakres("I7")
ścieżka = "moja ścieżka"
fname = numer inv & " - " & nazwa użytkownika

ActiveSheet.ExportAsFixedFormat Typ:=xlTypePDF, IgnorePrintAreas:=False, Nazwa pliku:=ścieżka i nazwa pliku

Set nextrec = Sheet3.Range("A1048576").End(xlUp).Offset(1, 0)

następny zapis = numer inw
nextrec.Offset(0, 1) = nazwa klienta
nextrec.Offset(0, 2) = amt
nextrec.Offset(0, 3) = dt_problem
nextrec.Offset(0, 4) = dt_problem + termin
nextrec.Offset(0, 8) = Teraz

Arkusz3.Hiperłącza.Dodaj kotwicę:=nextrec.Offset(0, 6), Adres:=ścieżka i nazwa użytkownika oraz „.pdf”

Z EItem

.Do = Zakres("A17")

.Subject = Range("A11") & " " & "Numer faktury: " & Range("I4") & " " & "dla rzeczników stanu Kalifornia"

.body = "Witaj" & Range("A11") & "," & vbNewLine & vbNewLine _
& „Zobacz załączoną fakturę za „ & Range(„A11”) i „.” & vbNowaLinia & vbNowaLinia _
& „Jeśli masz jakieś pytania, nie wahaj się ze mną skontaktować”. & vbNowaLinia & vbNowaLinia _
& „Najlepszy” & vbNewLine _
& „Mynamehere” & vbNewLine

.Attachments.Add (ścieżka i nazwa użytkownika oraz „.pdf”)

.Pokaz

Kończyć z
Exit Sub



End Sub
Ten komentarz został zminimalizowany przez moderatora na stronie
Cześć RoseAnne,

Możesz ręcznie dodać logo do swojego podpisu z wyprzedzeniem przed zastosowaniem kodu VBA. Kod należy umieścić w oknie Kod modułu (naciśnij Alt + F11, aby otworzyć Edytor Visual Basic, kliknij Wstaw > Moduł)
Nie ma tu jeszcze żadnych komentarzy
Zostaw swój komentarz
Publikowanie jako gość
×
Oceń ten post:
0   Postacie
Sugerowane lokalizacje

Bądż na bieżąco

Prawa autorskie © 2009 - www.extendoffice.com. | Wszelkie prawa zastrzeżone. Zasilany przez ExtendOffice, | Mapa strony
Microsoft i logo Office są znakami towarowymi lub zastrzeżonymi znakami towarowymi Microsoft Corporation w Stanach Zjednoczonych i / lub innych krajach.
Chronione przez Sectigo SSL