Registriert seit: 30.12.2024
	
Version(en): 365
	
 
	
	
		Hallo zusammen,
ich habe in einer Exel-Mappe ein Modul wodurch eine E-Mail erzeugt wird und ein bestimmter Teil aus einem Tabbellenblatt eingefügt wird.
Wie muss ich den Code ändern, wenn ich mehrere Bereiche in der E-Mail versenden möchte. Es sollen die Bereiche B5:N43, P5:AB43, AD5:AP43 und AR5:BD43 dargestellt werden.
Hier der Original-Code:
Set rng = Sheets("Blatt2").Range("B5:BD43")
Ich danke euch für eure Hilfe.
Mit besten Grüßen
Ole
	
	
	
	
	
 
 
	
	
	
		
	Registriert seit: 04.11.2014
	
Version(en): Office 365 Beta
	
 
	
	
		Hi,
Set rng = Sheets("Blatt2").Range("B5:N43, P5:AB43, AD5:AP43, AR5:BD43")
	
	
	
	
	
 
 
	
	
	
		
	Registriert seit: 30.12.2024
	
Version(en): 365
	
 
	
	
		Hi Boris,
danke für deine Hilfe.
jetzt bekomme ich in der Funktion RangetoHTML (rng As Range) den Fehler, dass mehrere bereiche nicht möglich sind.
Function RangetoHTML(rng As Range)
Dim TempFile As String
Dim TextStream As Object
Dim FSO As Object
Dim TempWB As Workbook
TempFile = Environ$("temp") & "/" & Format(Now, "dd-mm-yy h-mm-ss") & ".htm"
rng.Copy
Set TempWB = Workbooks.Add(1)
Hast du dafür auch eine Idee?
Gruß Ole
	
	
	
	
	
 
 
	
	
	
		
	Registriert seit: 22.11.2019
	
Version(en): 365
	
 
	
	
		Hallo Ole,
das PublishObjects.Add unterstützt diese Mehrfachrangeangabe nicht.
Ungeprüfte Ideen dazu:
- die Spalten O, AC und AQ vor der Benutzung von RangetoHTML ausblenden und später wieder einblenden
- RangeToHTML mehrfach benutzen
- .GetInspector.WordEditor.Paste mehrfach verwenden
Gruß Karl-Heinz
	
	
	
	
	
 
 
	
	
	
		
	Registriert seit: 04.11.2014
	
Version(en): Office 365 Beta
	
 
	
	
		Hi,
Zitat:jetzt bekomme ich in der Funktion RangetoHTML (rng As Range) den Fehler, dass mehrere bereiche nicht möglich sind.
Ja, ist mir bekannt - aber von der UDF stand nix in der Frage 

Die Hinweise von Karl-Heinz werden aber sicher fruchten 
 
	 
 
	
	
	
		
	Registriert seit: 30.12.2024
	
Version(en): 365
	
 
	
	
		Hallo zusammen und Danke für eure Hilfe.
Wir haben inzwischen eine Lösung gefunden.
Für jeden Bereich eine rng definiert .
Set rng(1) = Sheets("Blatt2").Range("B5:N43")
Set rng(2) = Sheets("Blatt2").Range("P5:AB43")
Set rng(3) = Sheets("Blatt2").Range("AD5:AP43")
Set rng(4) = Sheets("Blatt2").Range("AR5:BD43")
und im Body das untereinandersetzen bestimmt.