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

Hvordan sendes en e-mail via Outlook, når projektmappen gemmes i Excel?

Denne artikel taler om at sende en e-mail via Outlook, når en bestemt projektmappe gemmes i Excel. Gør som vejledningen viser.

Send en e-mail via Outlook, når projektmappen gemmes med VBA-kode


Send en e-mail via Outlook, når projektmappen gemmes med VBA-kode

For at sende en e-mail via Outlook, når projektmappen er gemt i Excel, skal du gøre som følger.

1. Gem først projektmappen som en Excel-makroaktiveret projektmappe. Klik på filet > Gem som. I Gem som Vælg en mappe for at gemme projektmappen, navngiv den i feltet Filnavn, vælg Excel-makroaktiveret projektmappe fra Filtype rullelisten, og klik derefter på Gem knap. Se skærmbillede:

2. Åbn den Excel-makroaktiverede projektmappe, du lige har gemt, tryk på andre + F11 taster samtidigt for at åbne Microsoft Visual Basic til applikationer vindue.

2. i Microsoft Visual Basic til applikationer dobbeltklik på vinduet ThisWorkbook i venstre bjælke, kopier og indsæt derefter nedenstående VBA-kode i ThisWorkbook kode vindue. Se skærmbillede:

VBA-kode: Send e-mail, når projektmappen er gemt

Private Sub Workbook_AfterSave(ByVal Success As Boolean)
'Updated by Extendoffice 20181102
    Dim xOutApp As Object
    Dim xMailItem As Object
    Dim xName As String
    On Error Resume Next
    Set xOutApp = CreateObject("Outlook.Application")
    Set xMailItem = xOutApp.CreateItem(0)
    xName = ActiveWorkbook.FullName
    With xMailItem
        .To = "Email Address"
        .CC = ""
        .Subject = "The workbook has been saved"
        .Body = "Hi," & Chr(13) & Chr(13) & "File is now updated."
        .Attachments.Add xName
        .Display
       '.send
    End With
    Set xMailItem = Nothing
    Set xOutApp = Nothing
End Sub

Bemærk: Udskift venligst Email adresse med modtagerens e-mail-adresse på linje .To = "E-mail-adresse"og ændre Cc, Subject såvel som body-felter i VBA-koden, som du har brug for.

3. Tryk på andre + Q taster samtidigt for at lukke Microsoft Visual Basic til applikationer vindue.

Fra nu af, når du opdaterer projektmappen og gemmer den, oprettes der automatisk en e-mail med opdateret projektmappe. Klik på Send knappen for at sende e-mailen. Se skærmbillede:

Bemærk: VBA-koden fungerer kun, når du bruger Outlook som dit e-mail-program.


Relaterede artikler:


De bedste Office-produktivitetsværktøjer

Kutools til Excel løser de fleste af dine problemer og øger din produktivitet med 80%

  • Genbruge: Indsæt hurtigt komplekse formler, diagrammer og alt, hvad du har brugt før; Krypter celler med adgangskode Opret postliste og send e-mails ...
  • Super formel bar (let redigere flere linjer med tekst og formel); Læsning Layout (let at læse og redigere et stort antal celler); Indsæt til filtreret rækkevidde...
  • Flet celler / rækker / kolonner uden at miste data; Split celler indhold; Kombiner duplikerede rækker / kolonner... Forhindre duplikerede celler; Sammenlign områder...
  • Vælg Duplicate eller Unique Rækker; Vælg tomme rækker (alle celler er tomme); Super Find og Fuzzy Find i mange arbejdsbøger; Tilfældig valg ...
  • Præcis kopi Flere celler uden at ændre formelreference; Auto Opret referencer til flere ark; Indsæt kugler, Afkrydsningsfelter og mere ...
  • Uddrag tekst, Tilføj tekst, Fjern efter position, Fjern mellemrum; Opret og udskriv personsøgningssubtotaler; Konverter mellem celler indhold og kommentarer...
  • Superfilter (gem og anvend filterskemaer på andre ark); Avanceret sortering efter måned / uge / dag, hyppighed og mere; Specielt filter af fed, kursiv ...
  • Kombiner arbejdsbøger og arbejdsark; Fletabeller baseret på nøglekolonner; Opdel data i flere ark; Batch Konverter xls, xlsx og PDF...
  • Mere end 300 kraftfulde funktioner. Understøtter Office / Excel 2007-2021 og 365. Understøtter alle sprog. Nem implementering i din virksomhed eller organisation. Fuld funktioner 30-dages gratis prøveperiode. 60 dages pengene tilbage garanti.
kte-fane 201905

Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere

  • Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
  • Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
  • Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!
officetab bund
Sorter kommentarer efter
Kommentarer (17)
Ingen vurderinger endnu. Vær den første til at bedømme!
Denne kommentar blev minimeret af moderatoren på webstedet
Sådan automatiseres e-mailmeddelelsen i VBA baseret på datointerval uden at skulle se pop op-vinduet for sikkerhedstilladelse for at tillade VBA at sende e-mailen.
Denne kommentar blev minimeret af moderatoren på webstedet
Tak. Konsulter: Udnytter du en misma rutina, como podria enviar el correo a un correo específico dependiendo el valor de otra celda?
Denne kommentar blev minimeret af moderatoren på webstedet
Kære alle, jeg vil gerne spørge, hvordan man vedhæfter et funktionelt link til en bestemt mappe på serveren, hvis jeg indsætter linket, vises det i projektmappen ligesom almindelig tekst og så virker det ikke i modtaget e-mail, hvordan kan jeg gøre det til et link, så modtagerne kan klikke på det?
Jeg vil gerne bruge denne måde i stedet for at sende den vedlagte excel-fil.
Tak for råd
Denne kommentar blev minimeret af moderatoren på webstedet
Hej robert
Jeg kan desværre ikke hjælpe med dette, velkommen til at stille spørgsmål om Excel til vores forum: https://www.extendoffice.com/forum.html. Du vil få flere Excel-støtter fra vores professionelle eller andre Excel-fans.
Denne kommentar blev minimeret af moderatoren på webstedet
Jeg satte dette i brødteksten i e-mailen, og det virkede for mig...
"fil:///Z:\dir1\dir2\dir3\Test1.xlsm"
Denne kommentar blev minimeret af moderatoren på webstedet
Hej, fin artikel! En ting, jeg har forsøgt at opnå med dette, er at vedhæfte den aktuelle tilstand af projektmappen til e-mailen.

I øjeblikket sender den kun den originale tilstand af filen og inkluderer ikke nogen ændringer, som brugeren ville have foretaget.

Nogle ideer til hvordan man implementerer dette ved hjælp af en makro?
Denne kommentar blev minimeret af moderatoren på webstedet
Hej Chris,
Koden er blevet opdateret med problemet løst, prøv venligst. Tak for din kommentar.
Denne kommentar blev minimeret af moderatoren på webstedet
Hej Chris,

Jeg er stødt på det samme problem.
I øjeblikket bruges koderne i "beforesave" modulet.
Hvilket betyder, at e-mailen vil sende det regneark, der tidligere er gemt.

Der er et andet modul "aftersave".
Jeg anvendte koden i dette modul, og det fungerede som en charme.
Denne kommentar blev minimeret af moderatoren på webstedet
Hvordan ville dette blive håndteret for et Office 365-dokument. Den gemmer automatisk.
Denne kommentar blev minimeret af moderatoren på webstedet
Er der en måde at få den automatiske e-mail til at blive automatisk krypteret?
Denne kommentar blev minimeret af moderatoren på webstedet
Hej Mike,
Jeg kan desværre ikke hjælpe med at løse dette problem. Tak for din kommentar.
Denne kommentar blev minimeret af moderatoren på webstedet
Hej! Mange tak for denne guideline :-) Jeg vil gerne gøre noget mere i denne kode - send en e-mail baseret på landene. Det betyder, at jeg skal oprette kommandoer med if og select. Ret? Jeg har allerede slettet den vedhæftede fil fra e-mail. Jeg vil gerne tilføje linket med stien til mappen i stedet for. Men når makro kører, er kommandoen ikke gyldig :-(
Jeg sætter pris på hver hjælp, hvordan man tilføjer den der.
Denne kommentar blev minimeret af moderatoren på webstedet
Hej - Hvordan kan jeg inkludere celledata i e-mail-feltet "cc"?
Denne kommentar blev minimeret af moderatoren på webstedet
Hej brent
Hvis du antager, at du vil inkludere værdien i celle a7 i e-mail-feltet "cc", prøv venligst nedenstående VBA.

Private Sub Workbook_AfterSave(ByVal Success As Boolean)

'Opdateret af Extendoffice 20200628

Dim xOutApp som objekt

Dim xMailItem som objekt

Dim xName Som streng

On Error Resume Next

Indstil xOutApp = CreateObject("Outlook.Application")

Indstil xMailItem = xOutApp.CreateItem(0)

xName = ActiveWorkbook.FullName

Med xMailItem

.To = "E-mail-adresse"

.CC = Range("a7").Værdi


.Subject = "Projektmappen er blevet gemt"

.Body = "Hej," & Chr(13) & Chr(13) & "Filen er nu opdateret."

.Attachments.Add xName

.Skærm

'.sende

Slut med

Indstil xMailItem = Ingenting

Indstil xOutApp = Ingenting

End Sub
Denne kommentar blev minimeret af moderatoren på webstedet
Kære alle, kan nogen hjælpe mig, jeg er en novice i VBA-kodning, jeg har lavet nogle ændringer, men hvordan kan jeg gøre det, send e-mail, hvis projektmappen er gemt, og hvis brugernavnet er anderledes, f.eks. hvis brugernavnet på stationen er glade2, så send e-mail, hvis projektmappen er gemt, ellers skal du ikke sende.

Mange tak for din støtte
Denne kommentar blev minimeret af moderatoren på webstedet
Hej Florin,
Forstod ikke din pointe. Hvad repræsenterer dit brugernavn?
Denne kommentar blev minimeret af moderatoren på webstedet
Hej krystal, tak for dit svar, usernane er enviroment usernane, og jeg har gjort det, jeg brugte en if-funktion og exit sub.
Mange tak.
Der er endnu ingen kommentarer her
Efterlad dine kommentarer
Sender som gæst
×
Bedøm dette indlæg:
0   Tegn
Foreslåede steder

Følg os

Copyright © 2009 - www.extendoffice.com. | Alle rettigheder forbeholdes. Drevet af ExtendOffice. | | Sitemap
Microsoft og Office-logoet er varemærker eller registrerede varemærker tilhørende Microsoft Corporation i USA og / eller andre lande.
Beskyttet af Sectigo SSL