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

Beiträge aus den Excel-Beispielen zum Thema "nochmal sverweis"