Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema InputBox
BildScreenshot zu InputBox InputBox-Seite mit Beispielarbeitsmappe aufrufen

aus Excel senden, aber mit Zellenformatierung?

Betrifft: aus Excel senden, aber mit Zellenformatierung? von: Racebutt
Geschrieben am: 14.08.2004 03:27:15

Hallo,

ich benutze dieses skript, um aus Excel 2003 mit Outlook 2003 zu senden:
http://www.office.gmxhome.de/_excel_outlook.htm#Bereich_mit_Outlook_senden

Das funktioniert soweit auch prima, aber ich habe das Problem, dass die Zellenformatierung nicht übernommen wird (Rahmenlinien, Fettschrift, etc.)
Wenn ich händisch Copy & Paste mache, funktioniert es. Woran kann das liegen und wie kann ich das ändern?

Vielen Dank
Racebutt

  


Betrifft: AW: aus Excel senden, aber mit Zellenformatierung? von: Erich M.
Geschrieben am: 14.08.2004 09:37:43

Hallo Racebutt,

(seltener Name?)
habe mir aus dem Forum das gebastelt, mit dem die aktuelle Tabelle versendet wird:
Option Explicit
Sub BlattKopierenUndVersenden()
'aktives Tabellenblatt als Arbeitsmappe
'im Temporären Ordner speichern, als
'Anlage mit Outlook versenden und anschliesend löschen
Dim strPath As String
Dim strName As String
Dim strFile As String
strPath = "C:\Windows\Temp\" ' !!!!!!!! Pfad anpassen !!!!!!!!!!!!
strName = InputBox("Dateiname eingeben, xls wird automatisch vergeben")
If strName = "" Then Exit Sub
'strName = ActiveSheet.Name 'Tabellenname
strFile = strPath & strName & ".xls"
Application.ScreenUpdating = False
ActiveSheet.Copy
Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Range("A1").Select
Application.CutCopyMode = False
With ActiveWorkbook
.SaveAs strFile
Senden strFile 'Datei versenden
.Close
End With
Kill strFile 'Datei löschen
Application.ScreenUpdating = True
End Sub

Sub Senden(AWS As String)
Dim Nachricht As Object, OutApp As Object
Set OutApp = CreateObject("Outlook.Application")
Set Nachricht = OutApp.CreateItem(0)
With Nachricht
'.To = "muster@muster.de"
'.Subject = InputBox(strName) '"strName" ' "Betreffzeile Header"
.attachments.Add AWS
'.Body = "Das ist ein Test." & vbCrLf & "Bitte ignorieren."
'Hier wird die Mail nochmals angezeigt
.Display
'Hier wird die Mail gleich in den Postausgang gelegt
'.Send
End With
'OutApp.Quit
'Set OutApp = Nothing
'Set Nachricht = Nothing
End Sub



Code eingefügt mit: Excel Code Jeanie

mfg
Erich


  


Betrifft: AW: aus Excel senden, aber mit Zellenformatierung? von: Racebutt
Geschrieben am: 14.08.2004 11:51:13

Hallo Erich,

wenn ich das richtig verstehe, wird die Tabelle als Anhang versendet? Das will ich ja nicht, die Zellen sollen direkt in die E-Mail eingetragen werden.

Gruß Racebutt


  


Betrifft: AW: aus Excel senden, aber mit Zellenformatierung? von: Ramses
Geschrieben am: 14.08.2004 15:30:17

Hallo

schau mal hier vorbei

http://www.office.gmxhome.de/_excel_outlook.htm#Bereich_mit_Outlook_senden

Gruss rainer


  


Betrifft: AW: aus Excel senden, aber mit Zellenformatierung? von: Racebutt
Geschrieben am: 14.08.2004 16:51:15

Ja, das benutze ich doch, aber die Zellformatierung wird dabei nicht in die Outlook-Mail übernommen, quasi wird nur der Zellinhalt übernommen, ich brauche aber die Gitternetzlinien und Fettdruck und sowas...
gibt's dafür keine Lösung?


  


Betrifft: AW: aus Excel senden, aber mit Zellenformatierung? von: Ramses
Geschrieben am: 14.08.2004 21:16:58

Hallo

Tut mir leid, aber die Gitternetzlinien werden nie übernommen.
Das einzige was ich dir anbieten kann, um die Formatierungen zu übernehmen ist das:

Sub Send_OriginalRange_from_Excel()
'Getestet unter Office XP
'Ohne Select geht es nicht :-))
Range("A1:C9").Select
'Das anzeigen der Envelope Commandbar ist unabdingbar
ActiveWorkbook.EnvelopeVisible = True
'Nun werden die Adressen vergeben
With ActiveSheet.MailEnvelope
      .Introduction = "Das ist der Einleitungstext." & vbCrLf & "mit einer zweiten Zeile"
      .Item.To = "irgendwer@irgendwo.de"
      .Item.Subject = "Die aktuellen Daten"
      .Item.Send
   End With
End Sub


Gruss Rainer