Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Code anpassen?

Forumthread: Code anpassen?

Code anpassen?
Erich
Hallo EXCEL-Freunde,
ich suche eine Lösung, nach der in Spalte "X" ein Wert gesucht wird
und wenn gefunden dieser Wert in Spalte "Y" übertragen wird. Ich habe einen
Code (von Klaus-Dieter), der funktioniert - aber nicht flexibel ist.
Mein Ziel ist, beide Spalten mit Variablen zu belegen.
Bei meiner Variante habe ich das Problem, dass die Einträge aufhören
wenn der Suchbegriff in der Suchspalte in einer "Leerzeile" nicht
gefunden wird - dann wird der Code beendet (ohne Fehlermeldung):

Sub aaaMuster()
Dim zeil As Integer
Dim adresse As String
Dim c As Object
myWert1 = "gbr"
myDatei = ThisWorkbook.Name
myName1 = "T3"
letzteSpalte = 2
neueSpalte = 7
With Workbooks(myDatei).Sheets(myName1).Range(letzteSpalte & "1:" & letzteSpalte & "500") ' Test Erich
'With Workbooks(myDatei).Sheets(myName1).Range("b1:b500") ' Original Klaus-Dieter
Set c = .Find(myWert1, LookIn:=xlValues)
If Not c Is Nothing Then
adresse = c.Address
Do
zeil = c.Row
Workbooks(myDatei).Sheets(myName1).Cells(zeil, neueSpalte) = _
Workbooks(myDatei).Sheets(myName1).Cells(zeil, letzteSpalte)
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> adresse
End If
End With
End Sub


Besten Dank für eine Hilfe!
mfg
Erich
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Code anpassen?
Ramses
Hallo
ich finde das ganze reltativ aufwändig programmiert.
Geht es so nicht einfacher ?,.. vor allem weil der Bereich ja definiert ist
Sub aaaMuster() 'Die Variablen sollten übrigens immer sauber 'und aussagekräftig deklariert werden ;-) Dim myWb As Object, mySheet As Object Dim strSearch As String Dim i As Integer, lastRow As Integer Dim SuchSpalte As Byte, ZielSpalte As Byte Set myWb = Workbooks(ThisWorkbook.Name) Set mySheet = myWb.Worksheets("T3") SuchSpalte = 2 ZielSpalte = 7 strSearch = "gbr" For i = 3 To mySheet.Cells(65536, 1).End(xlUp).Row 'letze Zeile in Spalte A bestimmen If mySheet.Cells(i, SuchSpalte) = strSearch Then mySheet.Cells(i, ZielSpalte) = mySheet.Cells(i, SuchSpalte) End If Next i End Sub
Damit solltest du flexibel genug sein
Gruss Rainer
Anzeige
Danke - Rainer; perfekt und flexibel!! o.T.
Erich
.
Merci :-) Geschlossen o.T.
Ramses
...
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige