Ich suche das folgende Verwendung von Excel zu tun:Wie bedingt Zeilen in Excel basierend auf Zellenwert in eine Tabelle hinzufügen
Im Folgenden finden Sie eine Tabelle von booleans und eindeutigen Kennungen.
Das möchte ich erreichen. Wenn in der ersten Spalte "Nein" steht, möchte ich, dass der Code automatisch eine ganz neue Zeile in einer separaten Tabelle mit dem eindeutigen Bezeichner in der ersten Spalte der neuen Zeile hinzufügt (siehe Tabelle 1).
In diesem Fall würde C4 und C5, die beiden Reihen unter (Kalkulationstabelle 2) beispielhaft genannt wurden.
-Code aktualisiert:
Sub AddID()
Dim c As Range
Dim j As Integer
Dim Source As Worksheet
Dim Target As Worksheet
Set Source = ActiveWorkbook.Worksheets("Questionnaire")
Set Target = ActiveWorkbook.Worksheets("AI Tracker")
j = 1
For Each c In Source.Range("C4:C54")
If c = "No" Then
Target.Cells(j + 4, "A").Value = c.Offset(, 1).Value
j = j + 1
End If
Next c
End Sub
Dies aktualisiert das Ziel Arbeitsblatt richtig, aber ich brauche es Update zu tun, wenn die Quelle-Arbeitsblatt geändert wird (dh, wenn etwas No geändert wird, sollte die Funktion füge die neue Zeile zum Zielblatt hinzu).
Ich habe den folgenden Code zu erkennen, Änderungen vorgenommen, aber es funktioniert nicht:
Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, ActiveWorkbook.Worksheets("Questionnaire").Range("C4:C54")) _
Is Nothing Then
Call Module2.AddID
MsgBox "Cell has changed"
End If
End Sub
Was haben Sie versucht? posten Sie bitte Ihren Code – litelite
Ich habe ein Code-Snippet hinzugefügt @litelite –