Ich habe diesen Code mit einer Reihe anderer Codes erstellt, die ich zusammengefügt habe, da ich selbst nicht sehr gut in VBA bin.Senden mehrerer Zellen an die letzte Zeile einer anderen Arbeitsmappe
ich eine Arbeitsmappe haben, die meine ist, es Daten, die alle über den Ort, zB: Name ist L2, Kontonummer ist C3 etc etc.
Dieser Code ist alle diese Daten in einem schicken bestimmte Zeile, zu einem anderen Arbeitsbuch, das von den übrigen Kollegen verwendet wird, und zur letzten Zeile dieses Arbeitsbuchs. Diese
Sub Save_To_Register()
Dim count As Integer
Dim r1 As Range, r2 As Range,
'Officer Name
Set r1 = Range("L2")
Set r2 = Sheets("Sheet1").Range("A100")
r2.Value = r1.Value
'Account Number
Set r1 = Range("C3")
Set r2 = Sheets("Sheet1").Range("C100")
r2.Value = r1.Value
'Account Address
Set r1 = Range("C4")
Set r2 = Sheets("Sheet1").Range("D100")
r2.Value = r1.Value
'Applicant of Take Over
Set r1 = Range("L3")
Set r2 = Sheets("Sheet1").Range("E100")
r2.Value = r1.Value
'Applicant of Take Over
Set r1 = Range("C3")
Set r2 = Sheets("Sheet1").Range("C100")
r2.Value = r1.Value
Application.Workbooks("PM-#8873088-v4-SUB-METERING_REGISTER.XLS").Activate
Application.Wait (Now + TimeValue("0:00:1"))
ThisWorkbook.Sheets("Sheet1").Range("A100:K100").Copy
ActiveSheet.Select
ActiveSheet.Range("A1").Select
count = 1
Do While Not (ActiveCell.Value = None)
ActiveCell.Offset(1, 0).Range("A1:K1").Select
count = count + 1
Loop
ActiveSheet.Range("A" & count).PasteSpecial
End Sub
ist kein sehr effizienter Code, ich bin die Spiegelung im Grunde die Zellen L2, C3, C4 & L3 zu einer einzigen Reihe A100: K100. In dieser Zeile enthalten sind eine Reihe von = Today() -Formeln.
Alles funktionierte gut, obwohl nicht so effizient wie es sein könnte. Wenn ich diesen VBA verwende, kopiert es alle Daten perfekt in die andere Arbeitsmappe , aber es aktualisiert alle Daten von früheren Einträgen.
Ich dachte, dass die Verwendung von Pastenspecial nur über die Werte übertragen würde, aber es scheint, dass alle Datenzellen, die in die neue Arbeitsmappe (Sub-Metering-Register) kopiert wurden = Today(), anstatt nur den tatsächlichen Wert .
Hat jemand irgendwelche Vorschläge, wie sichergestellt werden kann, dass die Datumswerte als Werte und nicht als ihre Formel kopiert werden oder wie verhindert man, dass die Werte jeden Tag in der neuen Arbeitsmappe aktualisiert werden?
Danke