Ich habe die Find-Methode verwendet, um zwei Spalten (A und B) in verschiedenen Blättern zu vergleichen. Spalte A ist die aktualisierte Spalte, Spalte B ist die kopierte Spalte. Der Code durchläuft und spaltet die Spalten und sucht nach Übereinstimmungsfällen. Wenn es einen eindeutigen Wert in Spalte A gibt, wird es in Spalte B kopiert. Ich habe es geschafft, es zu codieren, aber der eindeutige Wert erscheint nicht automatisch in Spalte B. Nur wenn ich auf die Zelle mit dem eindeutigen Wert von Spalte A klicke, würde es dann in Spalte B kopiert werden.Find Methode eindeutige Werte nicht automatisch in Spalte
Weiß jemand, warum es nicht automatisch aktualisieren kann?
-Code in Spalte A:
Private Sub Worksheet_SelectionChange(ByVal target As Range)
If target.Column = 9 Then
fabric = ActiveCell.Value
Module4.ChkFabric (fabric)
End If
End Sub
Ich habe ein Modul zu kopieren Spalte B verwendet:
Sub ChkFabric(ByRef fabric As String)
Dim Rng, TgtC, ResC As Range
Dim PrePlan As Worksheet
Set PrePlan = Worksheets("Pre Master Plan")
With PrePlan
Set ResC = .Range("A:A")
endrow = .Cells(PrePlan.Rows.Count, "A").End(xlUp).Row
End With
With ResC
Set Rng = .Find(what:=Trim(fabric), LookIn:=xlValues, lookat:=xlWhole,
searchorder:=xlByRows, searchdirection:=xlNext, _
MatchCase:=False)
If Not Rng Is Nothing Then
Else
PrePlan.Cells(endrow + 1, 1) = fabric
End If
End With
End Sub
Dieser Code erlaubt nur den Vergleich von zwei Spalten? Weil ich für meine Arbeitsmappe mehrere Spalten mit Spalte B vergleichen muss, deshalb habe ich den Code in das Modul –
geschrieben. Einfach den Bereich in der unteren Zeile von A1 erweitern: A & rowcount zu ur Datenbereich wird dies für Ihre Anforderung arbeiten. Application.WorksheetFunction.CountIf (Bereich (Ihr Datenbereich), currentRowValue) – Valli
Entschuldigung mein Fehler, ich meinte Spalte in mehreren Arbeitsblättern, um mit Spalte B zu vergleichen –