Brauchen Sie Hilfe?
Web:     Online-Formular
E-Mail:  
Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!
Tel:       +49(0)151 / 164 55 914

Nutzen Sie für Ihre Anfrage unser Online-Formular oder senden Sie uns eine E-Mail an Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!. Gerne können Sie aber auch direkt telefonisch Kontakt aufnehmen.

   
     Referenzen
 Bosch 
  T-Systems
  Hagebau
  Siemens
 Areva  VW
 Haufe-Lexware  British American Tobacco
  nagel group farbe
   

Änderungen von Zellen dokumentieren

101002 Einfügen in Tabellenblatt (nicht Code-Modul)

 
Mit diesem Code können Änderungen live in einer Spalte dokumentiert werden. Der Änderungshinweis wird in einer definierten Spalte ausgegeben.
 
Wenn Sie nun in der Spalte ab der Spalte A5 etwas ändern, wird in der Zelle A2 das Änderungsdatum geschrieben. Für Jede Spalte die geändert wird, ist dieses Makro erneut einzugeben.

 

Private Sub Worksheet_Change(ByVal Target As Range)
spalte = ActiveSheet.UsedRange.Rows.Count
If Not Application.Intersect(Target, Range("A5:A" & spalte)) Is Nothing Then
ActiveSheet.Range("A2").Value = Now
End If
End Sub

 
 
Beispiel:
 
Wenn hier in der Spalte B bis D etwas geändert wird, wird automatisch in die Spalte A das Wort
"Geändert" geschrieben.Mann kann damit super die Veränderung von Zellen dokumentieren und protokollieren.
 
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim Bereich As Range
Dim Z
' Bereich der Wirksamkeit
Set Bereich = Range("B1:D3000")
Application.EnableEvents = False
' überprüfen ob mehr als eine Zelle markiert $A$1:$B$3
' wurde mehere Zellen markiert ist wert größer 0
If InStr(Target.Address, ":") = 0 Then
If Intersect(Target, Bereich) Is Nothing Then GoTo Ende ' Abbruch, wenn Aktion nicht im Zielbereich

Cells(Target.Row, 1) = "Geändert"
Else
' es wurden mehere Zellen markiert
For Each Z In Selection
' überprüfen ob Zelle im vorgegebenen Bereich
If Intersect(Z, Bereich) Is Nothing Then
Else
Cells(Z.Row, 1) = "Geändert"
End If
Next Z
End If
Ende:
Application.EnableEvents = True
End Sub
_______________________________________________________________________________________
 
Das ganze gibts auch noch etwas kürzer....
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Select Case Target.Column
Case 2 To 4:
Cells(Target.Row, 1) = "geändert"
Case Else:
End Select
End Sub
_______________________________________________________________________________________
 
Dieser Code ist um die Funktion erweitert, dass nur jede 3. Zeile bei einer Änderung auch mit der
Kennzeichnung geändert versehen wird.
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim Bereich As Range
Dim Z
' Bereich der Wirksamkeit
Set Bereich = Range("B1:D3000")
Application.EnableEvents = False
' überprüfen ob mehr als eine Zelle markiert $A$1:$B$3
' wurde mehere Zellen markiert ist wert größer 0
If InStr(Target.Address, ":") = 0 Then
If Intersect(Target, Bereich) Is Nothing Then GoTo Ende ' Abbruch, wenn Aktion nicht im Zielbereich
If Target.Row \ 3 = Target.Row / 3 Then Cells(Target.Row, 1) = "Geändert"
Else
' es wurden mehere Zellen markiert
For Each Z In Selection
' überprüfen ob Zelle im vorgegebenen Bereich
If Intersect(Z, Bereich) Is Nothing Then
Else
If Z.Row \ 3 = Z.Row / 3 Then Cells(Z.Row, 1) = "Geändert"
End If
Next Z
End If
Ende:
Application.EnableEvents = True
End Sub
   

Relevante Artikel

  • Absolute in relative Zellbezüge umwandeln und umgekehrt

    101067 Die folgenden Makros wandeln vorhandene Zellbezüge in absolute bzw. relative Bezüge um. Zur Umwandlung von relativen Zellbezüge in absolute Bezüge, kann das Makro "absolut" verwendet...

  • Leere Zeilen aus einer Tabelle entfernen

    Mit Hilfe des VBA-Codes aus diesem Beispiel können Leerzeilen aus einem Tabellenblatt entfernt werden. Werden Daten importiert oder über die Zwischenablage auf einem Tabellenblatt eingefügt, so...

  • Zeilen abhängig von einer bestimmten Bedingung löschen

    Bedingte Zeilenlöschung Mit diesem Makro können sie Zeilen abhängig von einer Bedingung löschen. Die Bedingung in diesem Beispiel ist der Buchstabe "x" in der ersten Spalte. Das bedeutet, wenn eine...

  • Trennen von Zellinhalten - Text in Spalten

    Dieses Beispiel zeigt, wie Zellinhalte die sich fortlaufend in einer Zelle befinden getrennt werden können. Voraussetzung ist, dass die einzelnen Elemente durch ein beliebiges Trennzeichen separiert wurden,...

  • Zelladresse in Spalten- und Zeilenangaben trennen

    101084 Dieser Code trennt die Angabe der Adresse C15 in die Spalte C und in die Zeile 15. Die Trennung erfolgt mit der Funktion "Split". Es ist gleichgültig, wie lange die Spaltenangabe...

   

Excel-Inside auf Facebook Excel-Live News blog Excel-Inside RSS-Feed Twitter Account für Excel-Inside Mail an Excel-Inside 

Programmierung
Excel Auftragsprogrammierung Access Auftragsprogrammierung
Word Auftragsprogrammierung Outlook Auftragsprogrammierung
   
Unsere Produkte
Office Schulungen VBA, Excel, Access
E-Book Formeln und Funktionen Excel 2013