Anzeige
Archiv - Navigation
1272to1276
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zeilenweise Ersetzen in Abhängigkeit vom Zellwert

Zeilenweise Ersetzen in Abhängigkeit vom Zellwert
Björn
Moin liebe Gemeinde,
ich hoffe, Ihr könnt mir bei meinem Problem weiterhelfen:
Ich habe einer großen Menge von Zellen eine Auswahlbox im Rahmen der Datenüberprüfung zugeordnet. Die zugeordnete Liste ist eine Liste an verketteten Werten aus einem anderen Blatt. Nun kann es dazu kommen, dass sich die Werte der Verkettungen ändert. Das klappt hinsichtlich der Auswahlliste auch prima. Leider sind aber nun noch die alten Werte in dem eigentlichen Auswahlblatt enthalten, die alle auf den aktuellen Wert angepasst werden müssen.
Ich möchte also Folgendes:
Wenn im Blatt A in einer Zeile in Spalte C der Wert "X" ist, dann suche in Blatt B (überall) nach dem Wert der Spalte A aus Blatt A und ersetze ihne durch den Wert der Spalte B aus Blatt A.
.....die ganze Nummer dann natürlich Zeilenweise, denn die Auswahlliste hat schon ein paar mehr Einträge :-)
Es wäre schön, wenn einer von Euche eine zündende Idee hat.
Vielen Dank im Voraus
VG
Björn

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zeilenweise Ersetzen in Abhängigkeit vom Zellwert
23.07.2012 17:33:58
fcs
Hallo Björn,
wär nett, wenn du eine Beispieltabelle mit ein Paar Testdaten hier hochlädst. Das erleichtert es, dir mit einem entsprechenden Makro auszuhelfen.
Gruß
Franz
AW: Zeilenweise Ersetzen in Abhängigkeit vom Zellwert
23.07.2012 22:02:06
fcs
Hallo Björn,
ich hab es jetzt versucht im Blindflug umzusezen.
Gruß
Franz
Sub Prueferwerte_anpassen()
Dim wksA As Worksheet, wksB As Worksheet
Dim lngRow As Long, StatusCalc As Long
Dim varFind As Variant, varReplace
Set wksA = Worksheets("Blatt A") 'Blattname ggf. anpassen
Set wksB = Worksheets("Blatt B") 'Blattname ggf. anpassen
With Application
.EnableEvents = False
.ScreenUpdating = False
StatusCalc = .Calculation
.Calculation = xlCalculationManual
End With
With wksA
For lngRow = 2 To .Cells(.Rows.Count, 3).End(xlUp).Row 'Startzeile ggf. anpassen
If LCase(.Cells(lngRow, 3).Value) = "x" Then
varFind = .Cells(lngRow, 1).Value
varReplace = .Cells(lngRow, 2).Value
With wksB.UsedRange'Bereich ggf. etwas genauer festlegen
.Replace what:=varFind, Replacement:=varReplace, lookat:=xlWhole
End With
End If
Next lngRow
End With
With Application
.EnableEvents = True
.ScreenUpdating = True
.Calculation = StatusCalc
End With
End Sub

Anzeige

309 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige