Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
152to156
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
152to156
152to156
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Datenbank

Datenbank
29.08.2002 12:03:32
Andreas
Hallo Excel-Freaks,

kurze Frage. Ich habe zwei Sheets, auf einem steht eine Datenbank (kurze Fassung) die in Spalte A Wertpapierkennnummern enthält. Spalte B enthält den Firmennamen, usw. Spalte F ist leer!

Auf dem zweiten Sheet ist eine umfangreiche, aus dem Internet importierte Datenbank, die auch Kennnummern enthält. Nun möchte ich, die Kennnummern aus Sheet 1 mit den Kennnummern aus Sheet 2 vergleichen bei einer Übereinstimmung soll das Makro aus Sheet 2 Spalte C einen Wert in Spalte F des ersten Sheets (zur zugehörigen Kennnummer) übernehmen.

Wie löse ich das am elegantesten?

Schon mal besten Dank für eure Hilfe...

Andreas

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Datenbank
29.08.2002 12:10:14
Martin Beck
Hallo Andreas,

am einfachsten mit der SVERWEIS-Funktion, sofern die Kennnummern eindeutig sind, also nicht mehrfach vorkommen.

Gruß
Martin Beck

Zum Datenbankproblem...
29.08.2002 12:11:04
Andreas
... SVerweis ist keine gute Lösung, damit habe ich es versucht, aber manche Wertpapiere kommen in der Internetdatenbank nicht vor und da möchte ich Falschwerte ausschließen. Das Makro soll dann einfach den Wert "N.N." eintragen!
Datenbankproblem besteht immer noch...
29.08.2002 12:12:42
Andreas
Hallo Martin, besten Dank für den Input. Unsere Beiträge haben sich überschnitten. S-Verweis ist nicht die beste Lösung...!
Re: Datenbankproblem besteht immer noch...
29.08.2002 12:20:17
Martin Beck
Hallo Andreas,

die Fehlermeldung #NV kannst Du so unterdrücken:

=WENN(ISTNV(SVERWEIS(A1;Tabelle2!A1:B3;2;0));"N.N.";SVERWEIS(A1;Tabelle2!A1:B3;2;0))

Gruß
Martin Beck

Anzeige
Datenbankproblem besteht immer noch...
29.08.2002 12:23:05
Andreas
Das Problem ist irgendwie, dass sich der SVerweis einfach irgendeinen Wert zieht. Ich kann auch schlecht analysieren, woher, da ich nur zwei habe, einmal "Value" und dann "Growth"! Ich vermute es ist dasselbe Problem wie bei der Sortierung. Beim S-Verweis muss der Quellbereich mit dem Suchkritierum ja aufsteigend sortiert sein. Findet der S-Verweis also das Suchkritierum nicht in der Quelle nimmt er vielleicht den nächsthöheren oder niedrigeren Wert...
Re: Datenbankproblem besteht immer noch...
29.08.2002 12:26:42
PeterW
Hallo Andreas,

aus der Excel-Hilfe:
Ist Bereich_Verweis gleich WAHR, müssen die in der ersten Spalte von Matrix stehenden Werte in aufsteigender Reihenfolge angeordnet sein: ..., -2, -1, 0, 1, 2, ... , A-Z, FALSCH, WAHR, andernfalls liefert SVERWEIS eventuell ein falsches Ergebnis. Ist Bereich_Verweis gleich FALSCH ist es nicht notwendig, daß die Werte sortiert vorliegen.

Vielleicht hilft es.
Gruß
Peter

Anzeige
Re: Datenbankproblem besteht immer noch...
29.08.2002 12:40:41
Martin Beck
Hallo Andreas,

das ist schlicht falsch. Ein Sortierung ist nicht nötig, wenn der letzte Parameter auf FALSCH oder 0 gesetzt wird, und genau das ist in der von mir geposteten Formel

=WENN(ISTNV(SVERWEIS(A1;Tabelle2!A1:B3;2;0));"N.N.";SVERWEIS(A1;Tabelle2!A1:B3;2;0))

der Fall. Der Rückgabewert bei einem nicht gefundenen Wert ist #NV (und nicht der nächstgrößere/nächstkleinere) und das wird in meiner Formel abgefangen.

Hast Du die Formel überhaupt an Deine Verhältnisse angepaßt und ausprobiert?

Gruß
Martin Beck

Re: Datenbank
29.08.2002 13:25:36
richard
anderer vorschlag.
den ganzen spass ins access importieren (oder halt exportieren, jenachdem wierum man schaut ;-)
un da dann ganz easy zusammenfügen. nullo problemo mit irgendwas. anschließend wieder ins excel
und gfertig ist der spass!

mfg richi

Anzeige
Datenbank abgleichen
29.08.2002 14:10:00
Andreas
Hallo Peter, das mit dem Sortieren war mir schon klar..., dennoch danke für Deine Info.

Ich habe mal für alle, die später gerne recherchieren meine Pseudolösung hier hereinkopiert, damit ich den Forenteilnehmern auch mal etwas Gutes tun kann, oder auch nicht ;-)

Private Sub btn_abgleichen_Click()

Dim suchwert As Variant
Dim ergebnis As Variant
Dim row1 As Integer
Dim row2 As Integer
Dim row As Integer

Sheets("Fehlende Investmentstyles").Select
row = 7
row1 = row

While Sheets("Fehlende Investmentstyles").Cells(row1, 1).Value <> ""
suchwert = Sheets("Fehlende Investmentstyles").Cells(row1, 7).Value

Sheets("Datenbank Stoxx und S-B").Activate
row = 2
row2 = row

While Sheets("Datenbank Stoxx und S-B").Cells(row2, 1).Value <> ""
If Sheets("Datenbank Stoxx und S-B").Cells(row2, 1).Value <> suchwert Then
row2 = row2 + 1
Else
ergebnis = Sheets("Datenbank Stoxx und S-B").Cells(row2, 5).Value
Sheets("Fehlende Investmentstyles").Activate
Sheets("Fehlende Investmentstyles").Cells(row1, 10).Value = ergebnis
GoTo Zurück
End If
Wend
Sheets("Fehlende Investmentstyles").Cells(row1, 10).Value = "Keine Daten vorhanden"
Sheets("Datenbank Stoxx und S-B").Cells(2, 1).Select

Zurück:
Sheets("Fehlende Investmentstyles").Activate
row1 = row1 + 1

Wend
Sheets("Fehlende Investmentstyles").Cells(row1, 1).Value = "Ende"
Sheets("Fehlende Investmentstyles").Cells(1, 1).Select

End Sub

Anzeige
Re: [Sorry] Datenbankproblem besteht immer noch...
29.08.2002 14:41:18
Andreas
Hallo Martin,

Du hattest Recht..., ich habe Deine Formel nicht genau genug betrachtet. Ich hoffe Du verzeihst mir! Ich war nur ziemlich auf eine Makrolösung fixiert und habe Deine Antwort während dem Zusammenbasteln meines Codes nicht genau genug gelesen.

Ich wünsche Dir dennoch einen schönen Tag

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige