Ziel: Schleife durch eine Spalte von Zahlen/Codes und diese Codes zu ihren Beschreibungen (in einer Liste) und füllen die Zelle in der nächsten Spalte mit der zugehörigen Beschreibung. Zum Beispiel: A2 = 123456, A3 = 885467, A4 = 954789 usw. Lesen Sie in der ersten Zelle, A2 (123456). Finde 123456 in der Liste (123456 = Finanzen), platziere "Finanzen" in B2. Lesen Sie 885467 (A3). Finde (885467 = Marketing) in der Liste, platziere "Marketing" in B3 ... und so weiter. Die nächstgelegene ich gekommen bin, dies zu lösen ist:Durchlaufen Sie jede Zelle in einer Spalte, vergleichen Sie jede Zelle mit einer Liste und geben Sie eine zugehörige Beschreibung in eine benachbarte Zelle ein
Sub JobCodeDescription()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
'There are 3 worksheets in this Workbook.
'Job Code
'Location Code
'Entity Code
'Dim x As Number
Dim f As Range
For Each f In ActiveSheet.UsedRange.Columns("F").Cells
If f = "00053" Then ActiveCell.Offset(0, 1).Value = "Finance"
ElseIf f = "00056" Then ActiveCell.Offset(0, 1).Value = "Marketing"
ElseIf f = "00082" Then ActiveCell.Offset(0, 1).Value = "Technology"
' continues on...
Next f
' This works but the Active Cell DOES NOT move with "f". So the same cell continues to be populated and overwritten.
Next ws
End Sub
Diese Codes nie zu mir kommen, in einer bestimmten Reihenfolge und es werden Duplikate sein, also habe ich versucht, in aufsteigender Reihenfolge zu sortieren. Das scheint zu helfen, aber ich kann einfach nicht herausfinden, wie man die Jobcodes durchläuft und die Liste durchläuft, um die passende Code-Beschreibung zu finden. Ich könnte das alles falsch machen. Ich möchte nur die Codes in Spalte A mit einer flachen Datei vergleichen, aber ich weiß nicht, wie ich das machen soll. Die "Flat-Datei" ist nur eine .txt Datei und es ist eine Liste der Job Codes und ihrer Beschreibungen. Beispiel: 123456 = Finanzen. Jede Hilfe würde sehr geschätzt werden.
Kannst du stattdessen von deiner Beschreibung aus 'Vlookup()' oder 'Index/Match' verwenden? Könnten Sie eine Beispieltabelle veröffentlichen und die erwartete Ausgabe testen? Es klingt, als könnte das mit Formeln gemacht werden, es sei denn, ich verpasse etwas. – BruceWayne
Sie müssen "ActiveCell.Offset (0, 1) .Value" in "f.Offset (0, 1) .Value" ändern. –
Können Sie einen Screenshot der ersten 3 Zeilen des Arbeitsblatts und der Flat-Datei bereitstellen? –