Anzeige
Archiv - Navigation
1416to1420
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

VBA: Werte Sheet 1 ans Ende Sheet 2 anhängen - ID

VBA: Werte Sheet 1 ans Ende Sheet 2 anhängen - ID
31.03.2015 09:53:12
Andreas
Liebe Alle,
bei den meisten Problemen mit VBA konnte ich hier im Forum Hilfen und Anleitungen finden. Bei meinem jetzigen Problem bin ich aber auf eure Hilfe angewiesen. Andere Posts zu diesem Thema konnten mir nicht weiterhelfen - seit Tagen bin ich auf der Suche nach einer Lösung...
Ich habe zwei Tabellen jeweils mit Zeilenüberschriften wie folgt:
Tabelle 1: UserMeta





ABCD...Z
1WertWertWertWertWert
2WertWertWertWertWert
3WertWertWertWertWert

Tabelle 2: Users





AB
1Wert
2Wert
3Wert

Analog zu den Tabellennamen gibt es auch zwei Worksheets mit denselben Namen.
Ich möchte nun die Werte aus Sheets("Users") Spalte "B" in das Blatt Sheets("UsersMeta") mittels VBA übertragen. Verknüpft werden soll dabei über die jeweilige ID, welche in jeder der zwei Tabellen nur jeweils einmal vorkommt.
Mein bisheriger Ansatz ist eher bescheiden, wenngleich er funktioniert:
Bislang importiere ich beide Tabellen aus einer mysql-Datenbank mittels VBA, sortiere beide Tabellen aufsteigend nach der ID und kopiere anschließend die gesamte Spalte B aus dem Sheet Users in die Spalte Z des Sheet UsersMeta mit diesem Script:
Sub email_adressen_anhaengen()
' Sortiert aufsteigend ID
Worksheets("UserMeta").Range("A1").Sort _
Key1:=Worksheets("UserMeta").Columns("A"), _
Header:=xlYes
Worksheets("Users").Range("A1").Sort _
Key1:=Worksheets("Users").Columns("A"), _
Header:=xlYes
' Kopiert E-Mail-Adresse aus db-users in db_usermeta
Sheets("Users").Activate
Sheets("Users").Columns("B:B").Copy
'Activate the destination worksheet
Sheets("UserMeta").Activate
'Select the target range
Range("Z:Z").Select
'Paste in the target destination
ActiveSheet.Paste
Application.CutCopyMode = False
End Sub
Das ist aber eine unschöne Variante und zudem fehleranfällig.
Ich freue mich über Eure Hile und sage schon einmal Danke!
Andreas

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

Betreff
Datum
Anwender
Anzeige
AW: VBA: Werte Sheet 1 ans Ende Sheet 2 anhängen - ID
31.03.2015 12:29:47
Andreas
Liebe Forumgemeinde,
hat niemand eine Idee zur Problemlösung? Lässt sich das Kopieren mittels ID-Abgleich realisieren?
Vielen Dank
Andreas

VBA: Werte Sheet 1 ans Ende Sheet 2 anhängen
31.03.2015 18:36:48
Frank
Hallo Andreas,
da Du nicht schreibst, was Dir an Deiner bisherigen Methode nicht gefällt und wo die fehleranfällig ist (ja, denke ich auch...), hier mein Vorschlag:
lZQ = Sheets("Users").Range("A1").End(xlDown).Row
lZZ = Sheets("UserMeta").Range("A1").End(xlDown).Row
for i=1 to lZQ
IDQ=Sheets("Users").cells(i,1).value
for j=1 to lZZ
IDZ=Sheets("UserMeta").cells(j,1).value
if IDQ=IDZ then
Sheets("UserMeta").cells(j,26).value=Sheets("Users").cells(i,2).value
end if
next
next
Grüsse,
Frank

Anzeige
AW: VBA: Werte Sheet 1 ans Ende Sheet 2 anhängen
01.04.2015 11:28:45
Andreas
Hallo Frank
Das klappt wunderbar!
Herzlichen Dank dir!
Gruß
Andreas

132 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige