Kezdőlap › Fórumok › Excel programozás › Excel adatok másolása Outlook body-ba
- This topic has 2 hozzászólás, 2 résztvevő, and was last updated 2 years telt el by burjanos.
-
SzerzőBejegyzés
-
2022-10-11-23:56 #9360
Sziasztok!
Meg tudtam oldani, hogy az excelből egy emailt generálok outlook-ba. Ami nem sikerül: az email body-jába be szeretnék másolni az excelből egy cellatartományt, mint egy táblázatot. Be is másolja, de elveszítem a táblázat formátumát, mivel az outlook body-ja egy string és oda stringként teszi be, azaz az oszlopok elcsúsznak egymástól, nem táblázatszerű lesz. Most odáig jutottam, hogy a kijelölt cellatartományt a clipboard-ra teszem, az emailt létrehozom az outlook-ban, de nem küldöm el, hanem átlépek az outlook-ba a legenerált email-hez és ott ctrl+v-vel bemásolom a clipboard-ról a táblázatot, amit az outlook szépen, táblázatosan elhelyez az email-ben. Ezt a manuális műveletet szeretném programból megvalósítani, mert akkor nem kéne az outlook-ban megállnom, egyből mehetne az email.
A segítséget és az ötleteket előre is köszönöm.
A vágólapra másolás (ami az email generálás előtt van futtatva):
Range(„A1:B2”).Select
Selection.CopyAz email generáló eljárásom:
Sub Email_kuld(ByVal Email_cim As Variant, ByVal Targy As String, ByVal Body As String)
‘
‘ Az Email_cim tömbben megadott címekre elkészíti az emailt, de nem küldi el, csak megmutatja.Dim i As Integer
Dim OutlookApp As Outlook.Application
Dim OutlookEmail As Outlook.MailItem
Dim MyRecepient As Outlook.RecipientSet OutlookApp = CreateObject(„Outlook.Application”)
Set OutlookEmail = OutlookApp.CreateItem(olMailItem)On Error GoTo hiba
With OutlookEmail
For i = 0 To UBound(Email_cim)
If Email_cim(i) <> „” Then
.Recipients.Add (Email_cim(i))
End If
Next i.Subject = Targy
.Body = Body.Display
End With
Exit Sub
hiba:
valasz = MsgBox(„Nem sikerült az email elküldése!”, vbOKOnly Or vbCritical, „”)End Sub
2022-10-17-12:37 #9364Szia!
Most vettem észre ezt a kérdést. Ha még nem találtál megoldást
A sima szöveg helyett (Body) formázott szöveget kel betenni ilyenkor, ami ráadásul HTML.
Ezért HTML kódot kell generálni VBA-bana tábla addataiból.Előny, ha értesz egy kicsit a HTML-hez, hogy a táblázat milyen leíró TAG-ekkel van jelölve.
A neten elég sok megoldás van erre.
Pl.:
https://stackoverflow.com/questions/48496195/sending-excel-table-in-mailbodyA formátumot nem őrzi meg, csak az értékekekt, de táblázat lesz.
ha formátumot is akarsz (más színű fejléc, vagy ilyesmi), akkor még az is feladat.Van itt egy másik megoldás, ami lehet, hogy megőrzi a formátumot, de nem próbáltam, csak ismerem ezt a holland fószert, elég jó kódokat tett közzé:
https://rondebruin.nl/win/s1/outlook/bmail2.htmImre
2022-10-28-18:00 #9420Köszönöm, utánajárok és próbálkozom.
Burjanos
-
SzerzőBejegyzés
- Be kell jelentkezni a hozzászóláshoz.