Thema Datum  Von Nutzer Rating
Antwort
03.02.2022 15:05:09 fredde
NotSolved
Blau VBA Code - Range Suche / Sverweis eine Zeile tiefer
03.02.2022 17:24:08 Mase
NotSolved

Ansicht des Beitrags:
Von:
Mase
Datum:
03.02.2022 17:24:08
Views:
386
Rating: Antwort:
  Ja
Thema:
VBA Code - Range Suche / Sverweis eine Zeile tiefer

Application.Match() anstelle WorksheetFunction.Match() verwenden.



Der Vorteil liegt auf der Hand:

Wenn .WorksheetFunction.Match() nichts findet, bricht Dein Code mit einer Fehlermeldung ab.

Wenn .Match() nichts findet, wird der Code nicht abgebrochen, sondern der Fehler durchgereicht.

Hinweis:

Du kannst jetzt die Onlinehilfe durchsuchen, aber Du wirst nichts finden. Muss man halt wissen. Ich bin heute noch dankbar dafür. Ein Hoch auf die alten Haudegen und Dinos der VBA-Welt, welche Ihr WIssen in deutschen und englischen Foren weitergeben.



Heisst:

Suche mit Application.Match() in Spalte B nach dem Suchwert und speichere den Rückgabewert in eine Variant-Variable.

Jetzt prüfst Du diese Variable, ob diese einen Fehler oder eine Zahl zugewiesen bekommen hat.

Wenn Fehler, mach nichts weiter, wenn kein Fehler(also Zahl) dann ist das die Zeilennummer iaus Spalte B.

Diese Zeilennummer könntest Du zwar wie oben bereits von Dir gezeigt reinbasteln, bequemer wäre aber anstelle Range(...) mit Cells(...) zu arbeiten.



Nochmal zu mitschreiben:

IF Not IsError(DeineVariantVariable) Then '*** wenn also kein Fehler bzw eine Nummer zurückgegeben wurde

Cells(DeineVariantVariable, "B")...


Cells(Zeilennumer, Spaltennummer) liefert ja ein Range-Objekt. dh. im Grunde also eine Zelle.

Jetzt fehlt Dir nurnoch eine Methode, um auf die darunterliegende Zelle zuzugreifen.

 

Diese Methode beherrscht Deiner Zelle:. Sie heisst Offset().



Folglich:

IF Not IsError(DeineVariantVariable) Then

    IF Cells(DeineVariantVariable, "B").Offset(1,0).Value <> Range("C11").Value Then
      '**** da willst Du hin
    
  


 

 

Klar soweit?

Gut. Glaub ich aber erst, wenn Ich einen Code aus dieser Richtung sehe... Ist nämlich nicht immer ganz unschwer.


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
03.02.2022 15:05:09 fredde
NotSolved
Blau VBA Code - Range Suche / Sverweis eine Zeile tiefer
03.02.2022 17:24:08 Mase
NotSolved