Folgendes ist mein Problem.
Ich möchte Resttage aus einer alte Urlaubsdatei übertragen. In den Zellen I7, I8 und I9 baue ich mir eine Formel zusammen, welche anschliessend die Referenzformel sein soll und dann x-mal copiert werden soll.
Ich habe mir 2 Code-Modelle vorbereitet, doch keine funktionniert:
- Beim ersten Modell "Sub search_data_last_year1" kann ich die Referenzformeln wohl korrekt in den MsgBoxen lesen, doch wird sie nicht in die angegebenen Zellen übertragen :-(((
- Beim zweiten Modell "Sub search_data_last_year2" funktioniert es einwandfrei, das "=" wird beim aufzeichnen auch durch "=" ersetzt, Die gewünschten Werte erscheinen auch in allen Zellen, doch wenn ich anschliessend den aufgezeichneten Code wieder laufen lasse, dann ersetzt er mir die "=" Zeichen nicht mehr. In allen Zellen steht dann die Formel wieder als Text :-(((
Kann mir villeicht jemend hier weiterhelfen?
MfG
Ant Deister aus Luxemburg
Sub search_data_last_year1()
Sheets("Header").Select
Dim Urlaubübertrag As String
strgUrlaubübertrag = Range("I7")
Dim Übertstundenübertrag As String
strgÜbertstundenübertrag = Range("I8")
Dim Xübertrag As String
strgXübertrag = Range("I9")
MsgBox strgUrlaubübertrag
MsgBox strgÜbertstundenübertrag
MsgBox strgXübertrag
Sheets("Entry").Select
Range("E6") = strgUrlaubübertrag
Range("E7") = strgÜbertstundenübertrag
Range("E8") = strgXübertrag
Range("E6:E8").Select
Selection.Copy
Range("F6:EZ8").Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
End Sub
Sub search_data_last_year2()
Sheets("Header").Select
Range("I7:I9").Select 'in diesen Zellen werden 3 variable Formeln zusammen gestellt _
="=VLOOKUP(E$3;'["&I3&"]Sheet1'!$A$2:$G$241;6)" _
="=VLOOKUP(E$3;'["&I3&"]Sheet1'!$A$2:$G$241;7)" _
="=VLOOKUP(E$3;'["&I3&"]Sheet1'!$A$2:$G$241;5)" _
Zelle I3 ändert jedes Jahr
Selection.Copy
Sheets("Entry").Select
Range("E6").Select 'beim kopieren als Wert entstehen z.B. diese Formeln _
=VLOOKUP(E$3;'[2012 URLAUB PWF Gewerbliche.xlsm]Sheet1'!$A$2:$G$241;6) _
=VLOOKUP(E$3;'[2012 URLAUB PWF Gewerbliche.xlsm]Sheet1'!$A$2:$G$241;7) _
=VLOOKUP(E$3;'[2012 URLAUB PWF Gewerbliche.xlsm]Sheet1'!$A$2:$G$241;5)
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
'Da die Formel nicht als solches erkannt wird, ersetze ich "=" durch "="
Selection.Replace What:="=", Replacement:="=", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Application.CutCopyMode = False
Range("E6:E8").Select
Selection.Copy
Range("F6:EZ8").Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
End Sub