Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
724to728
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
724to728
724to728
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

SVerweis (VBA) .... mit Schleife Werte kopieren.

SVerweis (VBA) .... mit Schleife Werte kopieren.
27.01.2006 21:44:05
Proxima05
Ich habe folgendes vor. In einem Tabellenbereich (A1:A500) der Tabelle1 gibt es eine Spalte, deren Zellinhalt variabel ist (entweder enthält er "an" oder aus").
Über SVerweis in der Tabelle 2 hole ich mir für jeden Wert "an", die zugehörige Zahl in einer korrespondierenden Spalte. In VBA würde ich das so umsetzen:

Sub WertÜberSVerweis()
Dim v As Worksheet
Set v = Sheets("Tabelle1")
v.Cells(1, 5).Value = _
WorksheetFunction.VLookup(v.Cells(1, 4).Value, v.Range("A1:A500"), 2, False)
End Sub

Ausgabezelle = Tabelle2!A1
Suchkriterium in Tabelle1!D1
End Sub
Der Punkt ist jetzt nur, dass "an" mehrmals in der Tabelle erscheinen kann. Wie muss der Code aussehen, dass die SVerweis-Schleife solange durchlaufen wird, bis alle Positionen mit "an" gefunden worden sind. Und wie würde die Ergänzung aussehen, dass alle gefundenen Werte, dann auch in Tabelle2 untereinander kopiert werden.
Allerbesten Dank für einen Tipp.

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

Betreff
Datum
Anwender
Anzeige
AW: SVerweis (VBA) .... mit Schleife Werte kopiere
27.01.2006 22:41:53
Josef
Hallo Proxima!
Wenn schon mit VBA, dann mit Find()!
Sub WerteMitFind()
Dim objSource As Worksheet, objTarget As Worksheet
Dim rngFind As Range
Dim strFirst As String
Dim varSearch As Variant
Dim lngRow As Long

Set objSource = Sheets("Tabelle1") ' Quelltabelle
Set objTarget = Sheets("Tabelle2") ' Zieltabelle

objTarget.Range("A2:A65536").ClearContents 'Ausgabebereich leeren
varSearch = objSource.Range("D1") 'Suchbegriff
lngRow = 2 'Beginn der Ausgabe in "A2"

Set rngFind = objSource.Range("A:A").Find(What:=varSearch, LookAt:=xlWhole, LookIn:=xlValues)

If Not rngFind Is Nothing Then
  strFirst = rngFind.Address
  
  Do
    objTarget.Cells(lngRow, 1) = rngFind.Offset(0, 1) ' Wert aus Spalte "B"
    lngRow = lngRow + 1
    
    Set rngFind = objSource.Range("A:A").FindNext(rngFind)
    
  Loop While Not rngFind Is Nothing And strFirst <> rngFind.Address
  
End If

End Sub


'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
AW: SVerweis (VBA) .... mit Schleife Werte kopiere
28.01.2006 20:15:57
proxima05
Vielen Dank an euch beide ..... ich muss das noch probieren, will den Code natürlich auch verstehen.
Melde mich noch!
AW: SVerweis (VBA) .... mit Schleife Werte kopieren.
27.01.2006 22:43:53
Jan3
Hi,
Ohne SVerweis so, wenn ich Dich richtig verstanden habe.

Sub Übertrag()
Dim z, s As Long
Dim ws, ws1 As Worksheet
Set ws = Worksheets("Tabelle1")
Set ws1 = Worksheets("Tabelle2")
anz = ws.Cells(65536, 1).End(xlUp).Row
z1 = 1
For z = 1 To anz
If ws.Cells(z, 1) = "an" Then
ws1.Cells(z1, 1) = ws.Cells(z, 2)
z1 = z1 + 1
End If
Next
End Sub

Jan

110 Forumthreads zu ähnlichen Themen


Hallo zusammen,
in einer Tabelle sind verschiedene Zeilen mit einem "x" in Spalte C markiert. Die Anzahl der "x" variert.
Nun versuche ich ein Makro zu erstellen, welches mir, wenn eine Zeile mit einem "x" markiert ist in
Spalte B einen SVerweis (Suchwert steht in Spalte A) einträg...
Anzeige
SVerweis in VBA
Stefanglander

Hallo Forum,
ich habe folgenden Code in einer Zelle:
=WENN(C4="";"";SVERWEIS(C4;Stoffplan!$A$2:$F$100;2;FALSCH))
Mag mir jamand sagen wie und wo ich das in VBA hinterlegen kann.
Danke im Vorfelde
Stefan

Hallo liebe Leute,
hab diese Frage schon bei "Office-Lösung" gestellt, mir konnte aber nicht geholfen werden.
Folgendes Problem:
ich möchte mit einem SVERWEIS in ca. 15 verschiedenen Tabellen suchen. In Spalte A ist mein Suchkriterium und in Spalte B ein Begriff (Ort). Ich möchte al...
Anzeige

Hallo zusammen
Ich möchte zu einer Ziffer, welche ab dem zweiten Blatt in A1 steht, die dazugehörige Bezeichnung aus dem ersten Blatt "Konti" (Spalte B) ziehen und diese dann im Feld B1 eintragen. Irgendwas mache ich falsch.
Sub Konten_bezeichnen() Dim i As Long For i = Sheets("Konti")...

Hallo,
ich habe mir ein Userform erstellt, da ich Daten in Bezug auf das Datum in eine Tabelle eintragen muss.
Mein Problem ist, dass die Daten nicht irgendwo automatisch eingetragen werden sollen.
Ich würde gerne
im Userform 4 Textfelder ausfüllen und das Datum angeben
D...


Hallo!
Wie würde bitte die untenstehende Formel in VBA umgesetzt lauten?
=RUNDEN(F11*0,2;2)
F11 wäre in diesem Fall eine TextBox in einer UserForm.
Danke
Josef
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige