AW: Zelleninhalt zurücksetzen
15.02.2012 15:47:28
CitizenX
Hi,
teste mal:
Code ins Modul "DieseArbeitsmappe"
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Reset_Values
End Sub
Private Sub Workbook_Open()
Dim rZelle As Range, i As Long
' Tabellenname und Bereich anpassen!
Set myRange = Sheets("Tabelle3").Range("A1:D1")
ReDim Preserve aDaten(1 To myRange.Cells.Count)
For Each rZelle In myRange
i = i + 1
Set aDaten(i).raBereich = rZelle
aDaten(i).vValue = rZelle.Text
Next
End Sub
Code in ein allgemeines Modul:
Option Explicit
Public Type Bereich
raBereich As Range
vValue As Variant
End Type
Public myRange As Range
Public aDaten() As Bereich
Sub Reset_Values()
Dim i As Long
For i = LBound(aDaten) To UBound(aDaten)
aDaten(i).raBereich = aDaten(i).vValue
Next
End Sub
beim öffnen der Datei werden die Werte zwischen gespeichert.
Vor dem Schließen der Datei werden die Werte wieder in die Bereiche geschrieben.
Nach Änderungen kannst du auch manuell über den Aufruf "Reset_Values" die Originalwerte zurückschreiben.
Grüße
Steffen