|  
                                             
	Hallo zusammen, 
	 
	mein Problem ist folgendes: 
	ich habe ein Makro geschrieben, welches im Sheet "Übersicht" nach der Zelle mit dem Inhalt "Start" sucht. Der Inhalt der Zelle rechts neben der "Start"-Zelle wird dann kopiert und in das Sheet "Import" übertragen. 
	Das ist alles kein Problem... hier mal dieser teil vom Code: 
	 
	  
	
		
			| 
				Code: | 
		 
		
			
				With Worksheets("Übersicht") 
				    For Each rng In Sheets("Übersicht").Range("D" & columnEndD & ":D2") 
				        
				        If rng.Value = "Start" And cAnfang < indexA Then 
				            Sheets("Import").Cells(cAnfang, 7) = Sheets("Übersicht").Cells(rng.Row, rng.Column + 1) 
				            Columns("G:G").EntireColumn.AutoFit 
				            Columns(7).NumberFormat = ("DDD dd.mm.yy") 
				            cAnfang = cAnfang + 1 
				        End If 
				    Next rng 
				End With | 
		 
	
 
 
 
 
	das problem ist jetzt dass dieser Starttermin in folgenden Formen vorliegen kann: 
	 
	z.B. 
	 
	12.03.2012 
	to + 3 Monate oder Jahre oder Tage 
	to + 4 month oder years oder days 
	To 
	tO 
	t0 .... 
	T0.... 
	 
	to, t0, To, T0, TO, tO soll durch das aktuelle Datum ersetzt werden. 
	der Wert der dahinter steht soll dann auf das Datum addiert werden. 
	 
	Also als Beispiel: 
	Wenn heute der 17.06.2011 ist und in der Zeile steht 
	to + 3 days 
	 
	soll am Ende im Sheet import in der Zeile das Datum 20.06.2011 stehen 
	 
	das ist auch kein Problem. das funktioniert auch. 
	ABER wenn ich in die Zeile jetzt nur noch ein Datum schreibe und da nicht T0 + ... steht, dann rechnet mir Excel das Datum trotzdem um. Ich versteh aber nicht wieso. 
	 
	Hier mal der ganze Code. 
	Ich hoffe dass ihr mir helfen könnt, ich wäre sehr dankbar!  
	 
	  
	
		
			| 
				Code: | 
		 
		
			
				'sucht in Import in Spalte Anfang nach *to* und *t0*, ersetzt es druch das aktuelle Datum und rechnet den 
				'Wert der dahinter steht zum aktuellen Datum dazu 
				lRow = Range("G65335").End(xlUp).Row 
				vEng = Array("to", "Years", "Months", "Weeks", "Days", "Year", "Month", "Week", "Day") 
				vGer = Array("t0", "Jahre", "Monate", "Wochen", "Tage", "Jahr", "Monat", "Woche", "Tag") 
				vInt = Array("DATE", "#yyyy", "#m", "#ww", "#d", "#yyyy", "#m", "#ww", "#d") 
				 
				For Each rng In Range("G2:G" & lRow).Cells 
				    dRet = Date 
				    With rng 
				        sText = .Text 
				    
				        For i = 0 To UBound(vEng) - 1 
				           sText = Replace(sText, vEng(i), vInt(i), , , vbTextCompare) 
				           sText = Replace(sText, vGer(i), vInt(i), , , vbTextCompare) 
				        Next i 
				    
				        vRng = Split(Replace(sText, " ", ""), "+") 
				        If UCase(vRng(0)) = "DATE" Then 
				            For i = 1 To UBound(vRng) 
				                dRet = DateAdd(Mid(vRng(1), InStr(1, vRng(1), "#") + 1), Mid(vRng(1), 1, InStr(1, vRng(1), "#") - 1), Date) 
				            Next i 
				        End If 
				        
				        .Value = dRet 
				        
				    End With 
				Next rng | 
		 
	
 
 
 
	Vielen Dank!!!! 
	 
	glg Alisha 
     |