Herbers Excel-Forum - das Archiv

nochmal sverweis



Excel-Version: 9.0 (Office 2000)
nach unten

Betrifft: nochmal sverweis
von: Chris


Geschrieben am: 15.05.2002 - 12:57:09

Hallo ich hab neulich schon mal gefragt. Wie kann ich einen Sverweis über eine ganze Arbeitsmappe machen.

Lösungen für ein bestimmtes Arebitsblatt hab ich schon bekommen, nur will ich einen S-Verweis der folgendes macht:

Suchkriterium:
A1

Matrix:
Hier liegt das Problem. Ich kann immer nur die Matrix "1:65536" auf einem bestimmten Blatt bekommen. Nun hab ich aber 30 Blätter in den Excel suchen soll.

Spaltenindex:
3

Bereich_Verweis:
falsch

Kann mir jemand helfen?

Danke & Gruß
Chris

nach oben   nach unten

vielleicht hilft EXCELFORMELN weiter
von: g.o
Geschrieben am: 15.05.2002 - 13:01:03

http://www.excelformeln.de/formeln.html?welcher=233

Günther

nach oben   nach unten

Re: nochmal sverweis
von: Daniel R.


Geschrieben am: 15.05.2002 - 15:49:10

Hallo Chris
Eine andere Möglichkeit besteht darin, die Sverweis-Funktion per VBA zu programmieren. Ich habe dies für eine eigene Anwendung so konzipiert und das funktioniert super. Die Überprüfung kann auch aus einer ungeöffneten Mappe vorgenommen werden. Allerdings müssen in meinem Falle nur zwei Blätter durchsucht werden. Für den Blattnamen habe ich 2 Variablen definiert: pfad1 und pfad2. Die If-Anweisung im nachstehenden Code könnte jedoch beliebig fortgesetzt werden. Diese Lösung funktioniert bei Zahlen und Text.
Die eigentliche Sverweis-Funktion habe ich aufgezeichnet, d.h. der Makrorecorder schreibt die Funktion mit. Diese muss übrigens lediglich für das erste Blatt ausgelegt werden. Alle anderen Blätter werden, wie gesagt, sozusagen mit "elseif" angehängt. Der gesuchte Wert wird übrigens 3 Zellen links von der aktiven Zelle eingelesen (ActiveCell.Offset(columnOffset:=-3).Activate).
Ob damit sogar 30 Blätter überprüft werden können vermag ich nicht zu beurteilen. Vielleicht bringt Dich dieser Ansatz dennoch weiter. Ansonsten kannst Du nochmals nachfragen.
Gruss Daniel R.

.....
ActiveCell.Offset(columnOffset:=-3).Activate
'Sverweis auf Artikelliste Rohstoffe
ActiveCell.FormulaR1C1 = _
"=IF(RC[+3]>0,IF(ISERROR(VLOOKUP(RC[+3]," & pfad1 & "!R5C1:R5000C2,2,FALSE)),""Falsche Nummer"",VLOOKUP(RC[+3]," & pfad1 & "!R5C1:R5000C2,2,FALSE)),"""")"
wertverweis = ActiveCell.Value
'Wenn Artikelnummer in Rohstoffe nicht enthalten:
If wertverweis = "Falsche Nummer" Then
'Dann Sverweis auf Artikelliste Rohstoffe passiv
ActiveCell.FormulaR1C1 = _
"=IF(RC[+3]>0,IF(ISERROR(VLOOKUP(RC[+3]," & pfad2 & "!R5C1:R5000C2,2,FALSE)),""Falsche Nummer"",VLOOKUP(RC[+3]," & pfad2 & "!R5C1:R5000C2,2,FALSE)),"""")"
wertverweis = ActiveCell.Value
End If
'Sverweis setzt auch die Funktion in die betreffende Zelle ein
'deshalb muss diese wieder gelöscht werden
Selection.ClearContents
ActiveCell.Value = wertverweis
ActiveCell.Offset(columnOffset:=3).Activate
.....


 nach oben

Excel-Beispiele zum Thema "nochmal sverweis"
SVERWEIS auf geschlossene Arbeitsmappe aus Makro aufrufen Benutzerdefinierte SVERWEIS-Funktion über mehrere Bereiche
Arbeitszeittabelle und SVERWEIS-Formel Zugriff über SVERWEIS() auf eine Artikelliste
SVERWEIS-Formel über mehrere Fundstellen SVERWEIS-, WVERWEIS- und Matrixformel-Beispiele
SVERWEIS, WVERWEIS, INDEX, VERGLEICH und Zielwertsuche Zweidimensionale Matrix mit der SVERWEIS-Funktion durchsuchen
Hyperlinks zu SVERWEIS-Bezugstabellen anlegen SVERWEIS als Ereignisprozedur