Anzeige
Archiv - Navigation
892to896
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
892to896
892to896
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
SVERWEIS mit ISTFEHLER in VBA?
10.08.2007 21:26:00
Kasimir
Hallo Leute,
irgendwie bekomme ich es nicht hin. Ich will die Formel
=NICHT(ISTFEHLER(SVERWEIS($A7;Feiertage;1;0)))
(Feiertage ist ein Bereich A2:A22, dem ich einen Namen gegeben habe) in VBA mit „Application.WorksheetFunction….“ nachbauen und abfragen ob True oder False.
Kann mir jemand die Formel mal in Application.WorksheetFunction aufzeigen? Wäre Euch dankbar, sonst sitze ich hier noch bis morgen früh und komme nicht auf die Lösung.
Danke,
Kasimir

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: SVERWEIS mit ISTFEHLER in VBA?
10.08.2007 21:56:26
Beate
Hallo Kasimir,
so die Wiedergabe in der aktiven Zelle:
Sub aktive_Zelle()
    ActiveCell.Formula = "=NOT(ISERROR(VLOOKUP($A7,Feiertage,1,0)))"
End Sub


und so in einer MsgBox:
Sub Msg_Box()
    MsgBox [NOT(ISERROR(VLOOKUP($A7,Feiertage,1,0)))]
End Sub

Gruß,
Beate

Anzeige
AW: SVERWEIS mit ISTFEHLER in VBA?
10.08.2007 22:06:03
Kasimir
HAllo Beate,
danke Dir für Deine Antwort. Eine Frage hätte ich da aber noch. Wie kann die Zellbezeichnuing A7 variabel gestalten?
Ich möchte über diese Funktion in der Spalte A von Zeile 7 bis Zeile 37 prüfen, ob einer der Tage ein Feiertag (liefert mir der Bereich Feiertage A2:A22 in einem anderen Tabellenblatt) ist. Das wollte ich mit der SVERWEIS-Formel aber eben in VBA machen.
Wenn Du so nett wärst mir da eventuell nochmal helfend unter die Arme zu greifen wäre ich suuuuper glücklich.
Danke Dir,
Kasimir

AW: SVERWEIS mit ISTFEHLER in VBA?
11.08.2007 12:51:43
Klaus-Dieter
Hallo Kasimir,
ich denke, du meinst das so:

Sub feiertag()
Dim iZeil As Integer
For iZeil = 7 To 37
Cells(iZeil, 2) = Application.WorksheetFunction.VLookup(Cells(iZeil, 1), Sheets("Feiertage") _
.Range("A2:A22", 2), False)
Next iZeil
End Sub


In Spalte A7 bis A37 steht jeweils ein Datum. Im Tabellenblatt Feiertage steht in Celle A2 bis A22 das Datum der Feiertage. In Spalte B stehen die Namen der Feiertage. Die Überträgt das Makro in die erste Tabelle nach Spalte B.
Viele Grüße Klaus-Dieter

Online-Excel

Anzeige
AW: SVERWEIS mit ISTFEHLER in VBA?
11.08.2007 13:18:00
Rolf
Hallo Kasimir,
Beates Code ein bisschen ergänzt:

Sub aktive_Zelle()
Dim QString$, AString$, d As Range
Set d = Application.InputBox("Bitte Datumszelle auswählen", "Date", , , , , , 8)
AString = d.Address
QString = "=NOT(ISERROR(VLOOKUP(" & AString & ",Feiertage,1,0)))"
ActiveCell.Formula = QString
End Sub


fG
Rolf

AW: SVERWEIS mit ISTFEHLER in VBA?
11.08.2007 15:40:00
Kasimir
Hallo Rolf, hallo Klaus Dieter!
Danke Euch für Eure Antworten.
Rolf seine Antwort funktioniert, ist aber leider nicht das, was ich mir vogestellt habe, da es eine Formel in eine Zelle zurückgibt.
Klaus Dieters Lösung sieht viel versprechend aus, brint mir aber einen Laufzeitfehler1004 Anwendungs - oder objekdefinierter Fehler. Deine Ausführungen bezüglich wo sich die Feiertagsdaten befinden sind richtig. In Blatt "Feiertage in Zelle A2 bis A22 befinden sich die Datumswerte in Spalte B die Feiertagsnamen.
Warum erhalte ich den Fehler?
Danke nochmal und Gruß,
Kasimir

Anzeige
AW: SVERWEIS mit ISTFEHLER in VBA?
11.08.2007 17:52:00
Klaus-Dieter
Hallo Kasimir,
es sind immer die Kleinigkeiten an denen man scheitert. Anbei eine überarbeitete Version. Der Fehler wird ausgelöst, wenn SVerweis keine Übereinstimmung findet. Habe das jetzt mit "On Error Resume Next" abgefangen. Was intelligenteres ist mir auf die Schnelle nicht eingefallen. Funktioniert aber erst mal. Außerdem war der Suchbereich falsch definiert. Ist auch angepasst.

Sub feiertag()
Dim iZeil As Integer
On Error Resume Next
For iZeil = 7 To 37
Sheets("Tabelle2").Cells(iZeil, 2) _
= Application.WorksheetFunction.VLookup(Sheets("Tabelle2") _
.Cells(iZeil, 1), Sheets("Feiertage").Range("A2:B22"), 2, False)
Next iZeil
End Sub


Viele Grüße Klaus-Dieter

Online-Excel

Anzeige
AW: SVERWEIS mit ISTFEHLER in VBA?
11.08.2007 18:06:52
Kasimir
Hallo Klaus Dieter,
suuuuper, danke Dir. Genau so hatte ich mir das gedacht.
Noch ein schönes Wochenende,
Kasimir

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige