Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VLOOKUP Fehlermeldung anzeigen

VLOOKUP Fehlermeldung anzeigen
01.05.2016 23:00:21
Andi
Hallo,
brauch mal wieder von euch eine Hilfestellung
bin schon eine ganze weile beschäftigt eine Fehlermeldung über eine MSGBOX ausgeben zu lassen, wenn das Suchkriterium in Zelle A3 nich mit den Listeneinträgen in Tabelle1 Spalte A übereinstimmt.
Ist für euch sicher kein Problem
Währe Super für ein Hinweis
Danke im vorraus
Gruß
Andi
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ws1, ws2 As Worksheet
Dim rng As Range
Dim letzte As Long
On Error Resume Next
letzte = Sheets("Tabelle1").Range("A" & Rows.Count).End(xlUp).Row
Set ws1 = Tabelle1
Set ws2 = Tabelle2
Set rng = ws2.Range("A3")
With ws2
If rng Is Nothing Then
MsgBox ("Es wurde keine passender Wert zu '" & rng.Target & "' gefunden")
Else
.Range("A2").Value = Application.WorksheetFunction.VLookup(rng, ws1.Range("A1:F" & letzte).  _
_
Value, 2, 0)
.Range("B3").Value = Application.WorksheetFunction.VLookup(rng, ws1.Range("A1:F" & letzte).  _
_
Value, 3, 0)
.Range("C3").Value = Application.WorksheetFunction.VLookup(rng, ws1.Range("A1:F" & letzte).  _
_
Value, 4, 0)
.Range("D3").Value = Application.WorksheetFunction.VLookup(rng, ws1.Range("A1:F" & letzte).  _
_
Value, 5, 0)
.Range("E3").Value = Application.WorksheetFunction.VLookup(rng, ws1.Range("A1:F" & letzte).  _
_
Value, 6, 0)
End If
End With
End Sub

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Was soll denn 'rng.Target' sein, ...
02.05.2016 01:26:46
Luc:-?
…Andi?
Das ist doch blanker Unfug! Achte doch einfach mal auf den VBE-Intellisense! Zeigt der dir Target als Auswahlmöglichkeit an, wenn du den Pkt nach rng setzt? Na, bitte!
Target als Kopf-Parameter einer Ereignis­Prozedur ist ein Range-Objekt, das genau den Bereich umfasst, in dem das Ereignis ausgelöst wurde.
Wenn du die ObjektVariable rng, die auf das Objekt ws2.Range("A3") referenziert, in einer MsgBox, die bekanntlich nur Texte wiedergeben kann, verwenden willst, ist das zwar möglich, wenn die dortige Zelle einen in einen Text umwandelbaren Wert enthält, weil .Value die BereichsStandard­Eigenschaft ist, aber natürlich nicht mit einer völlig unnötiger­weise hinzu­gefügten Eigen­schaft, die dieses Objekt nicht kennt, wodurch hier ein Fehler ausgelöst wird, der die MsgBox unterdrückt (die kann übrigens auch keine Fehler­werte anzeigen, es sei denn, man wandelt sie mit CStr in Text um).
Morrn, Luc :-?
Besser informiert mit …

Anzeige
AW: VLOOKUP Fehlermeldung anzeigen
02.05.2016 11:11:39
ChrisL
Hi Andi
Ob ein SelectionChange Ereignis Sinn macht musst du selber beurteilen.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ws1 As Worksheet, ws2 As Worksheet
Dim rng1 As Range, rng2 As Range
Dim letzte As Long
Set ws1 = Tabelle1
Set ws2 = Tabelle2
With ws2
letzte = ws1.Range("A" & ws1.Rows.Count).End(xlUp).Row
Set rng1 = .Range("A3")
Set rng2 = ws1.Range("A1:F" & letzte)
If Application.WorksheetFunction.CountIf(ws1.Range("A1:A" & letzte), rng1) = 0 Then
MsgBox ("Es wurde keine passender Wert zu '" & rng1 & "' gefunden")
Else
.Range("A2").Value = Application.WorksheetFunction.VLookup(rng1, rng2, 2, 0)
.Range("B3").Value = Application.WorksheetFunction.VLookup(rng1, rng2, 3, 0)
.Range("C3").Value = Application.WorksheetFunction.VLookup(rng1, rng2, 4, 0)
.Range("D3").Value = Application.WorksheetFunction.VLookup(rng1, rng2, 5, 0)
.Range("E3").Value = Application.WorksheetFunction.VLookup(rng1, rng2, 6, 0)
End If
End With
End Sub

cu
Chris
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige