Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
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 (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
724to728
724to728
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

SVerweis

SVerweis
29.01.2006 10:55:53
Franz
Guten Morgen Fachleute,
hab da ein SVerweis-Problem, das mir zu hoch ist. Versuche es langsam zu entwickeln:
1.
=SVERWEIS(AY29;VarSonst;2;0):
- AY29 ist ein Datum
- VarSonst ist ein zweispaltiger Bereich: 1. Sp: Datum, 2. Sp: Wert
mit der Formel wird ein Wert geholt zu dem Datum geholt
2.
=WENN(NICHT(ISTNV(SVERWEIS(AY29;VarSonst;2;0)));SVERWEIS(AY29;VarSonst;2;0);"")
... damit's kein #NV gibt, wenn in der ersten Spalte von VarSonst das Datum nicht zu finden ist.
3.
Gibt's das gesuchte Datum (Suchkriterium) mehr als ein Mal in VarSonst, nimmt SVerweis den ersten gefundenen Wert.
Nun sollte aber auch noch ein bestimmtes Kriterium erfüllt sein, dass nämlich der zu suchende Wert z. B. ein "?" enthält, und nur dann soll SVerweis das holen. Und da scheitere ich. Einer meiner (Fehl-)Versuche:
=WENN(NICHT(ISTFEHLER(FINDEN("?";SVERWEIS(AY29;VarSonst;2;0);)));SVERWEIS(AY29;VarSonst;2;0);"")
Falls es da eine Lösung geben sollte, bitte ich um Eure HIlfe.
Danke schon mal im Voraus und Grüße
Franz

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: SVerweis
29.01.2006 11:12:09
Franz
Hallo Rainer,
danke erstmal, werd mal schauen, ob ich das für mich ummodeln kann. Es geht bei mir ja nicht um das Suchkriterium, da wird immer nach dem kompletten Datum gesucht. Es geht mir um einen Teilstring im ZU FINDENDEN Wert der zweiten Spalte des Bereiches...
Danke und Grüße
Franz
AW: SVerweis
29.01.2006 14:10:38
Ramses
Hallo Franz
Ich bin bei diesem Problem etwas auf der Leitung gestanden, deshalb dauerte es etwas.
Hier noch eine andere Variante per UDF
 
 ABCDEFGH
1 MusterTeilErzielter Treffer WertStringErgebnis
2Check Teil ÜbereinstimmungMusterTemp3 MusterTest1
3Check volle ÜbereinstimmungMusterTemp4 MusterText2
4     MusterTemperatur3
5     MusterTemp4
6        
Formeln der Tabelle
D2 : =findmatch(B2;$F$2:$H$13;C2;2;3;0)
D3 : =findmatch(B3;$F$2:$H$13;C3;2;3;1)
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
Dazu diese UDF in ein Modul
'Function FindMatch( _
    srcVal = Suchwert As Variant, _
    srcRange = Bereich der gepürft werden soll As Range, _
    compCol Spalte die mit dem Teilstring verglichen werden soll As Integer, _
    findStr = Zu prüfender Teilstring in Ergebnisspalte As String _
    srcCol Spalte wo der Wert genommen werden soll As Integer, _
    compTar = 1= Volle Übereinstimmung, 0 = Teilweise Übereinstimmung As Boolean) As Variant


Function FindMatch(srcVal As Variant, srcRange As Range, findStr As String, compCol As Integer, srcCol As Integer, compTar As Boolean) As Variant
    Dim myC As Range
    If srcVal = "" Then
        FindMatch = "Kein Suchbegriff übergeben"
        Exit Function
    End If
    If findStr = "" Then
        FindMatch = "Kein Textvergleich übergeben"
        Exit Function
    End If
    If srcRange.Columns.Count < srcCol Then
        FindMatch = "Spaltenbereich zu klein"
        Exit Function
    End If
    For Each myC In srcRange.Columns(1).Cells
        Debug.Print myC.Address
        If compTar = True Then
            Debug.Print myC.Value
            Debug.Print myC.Offset(0, compCol - 1).Value
            If myC.Value = srcVal And myC.Offset(0, compCol - 1).Value = findStr Then
                FindMatch = myC.Offset(0, srcCol - 1)
                Exit Function
            End If
        ElseIf compTar = False Then
            If myC = srcVal And InStr(1, myC.Offset(0, compCol - 1), findStr) > 0 Then
                FindMatch = myC.Offset(0, srcCol - 1)
                Exit Function
            End If
        End If
    Next
End Function


Ist vielleicht etwas einfacher einzugeben und zu varieeren ;-)
Gruss Rainer
Anzeige
AW: SVerweis
29.01.2006 15:56:48
Franz
Hallo Rainer,
jetzt hat's bei mir ein bissl gedauert, bis ich durchgestiegen bin, tolle Funktion! Da muss ich wohl noch üben... Aber der Einsatz ist tatsächlichsehr schön. Vielen Dank!
Grüße
Franz
AW: SVerweis
ransi
hallo franz
Zu2.)
Deine formel funktioniert zwar,
diese hier tut das gleiche, sollte aber schneller sein:
 
 ABCD
1DatumDaten02.01.2006i
201.01.2006t  
302.01.2006i  
402.01.2006i  
502.01.2006p  
602.01.2006p  
703.01.2006b  
804.01.2006p  
905.01.2006w  
1006.01.2006a  
1107.01.2006n  
1208.01.2006g  
1309.01.2006x  
1410.01.2006e  
Formeln der Tabelle
D1 : =WENN(ZÄHLENWENN(A:A;C1);SVERWEIS(C1;A1:B20;2;);"")
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
zu3.)
habe ich nicht verstanden.
ransi
Anzeige
AW: SVerweis
29.01.2006 11:20:32
Franz
Hallo ransi,
zu 3.:
im Bereich VarSonst gibt es z.B.:
29.01.2006 abcdef
29.01.2006 asdfasdfasdf
29.01.2006 uvwxyz
29.01.2006 asdfasdf?asdfasdf
29.01.2006 mmmmmmmmmmmm
es soll nun der 4. Eintrag an diesem Datum ausgegeben werden, nämlich der, der ein "?" enthält. Sorry, wenn ich das beim erstem Mal nicht verständlich geschrieben habe!!
Grüße
Franz
AW: SVerweis
ransi
Hallo franz
anders krieg ichs nicht hin:
 
 ABCDE
1 Kein wert02.01.2006p?letztes vorkommen
2DatumDaten Kein wertvorletztes vorkommen
301.01.2006t Kein wertvorvorletztes vorkommen
402.01.2006i   
502.01.2006a   
602.01.2006a   
702.01.2006p?   
803.01.2006b   
904.01.2006p   
1005.01.2006w   
1106.01.2006a   
1207.01.2006n   
1308.01.2006g   
1409.01.2006x   
1510.01.2006e   
Formeln der Tabelle
D1 : {=INDEX($A$1:$B$20;KGRÖSSTE(($A$1:$A$20=$C$1)*(ISTZAHL(FINDEN("?";$B$1:$B$20)))*(ZEILE($A$1:$A$20));ZEILE(A1));2)}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  
ransi
Anzeige
AW: SVerweis
29.01.2006 11:56:26
Franz
Hallo ransi,
ist ja sehr gut! Mit "anders krieg ichs nicht hin" meinst du wohl, dass es nicht kürzer ist. Ist aber schon gut so! Wie die Formel dahinter ausschaut, ist nicht so wichtig..!!
Vielen Dank und Grüße
Franz
AW: SVerweis
ransi
hallo franz
mit "anders krieg ichs nicht hin" meinte ich das
der LETZTE gefundene wert als erstes in der liste steht.
Sverweis() findet den ersten.
Aber wenn du damit leben kannst freut mich das.
ransi
AW: SVerweis
ransi
hallo franz
mit "anders krieg ichs nicht hin" meinte ich das
der LETZTE gefundene wert als erstes in der liste steht.
Sverweis() findet den ersten.
Aber wenn du damit leben kannst freut mich das.
ransi
Anzeige
AW: SVerweis
29.01.2006 12:05:41
Franz
ah, jetzt versteh ich. Nein, ist bestens, will ja nur den einen mit dem Fragezeichen, die anderen interessieren nicht.
Noch mal vielen Dank und Grüße
Franz

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige