ich möchte aus einer Userform in Outlook heraus überprüfen, ob der in der Textbox befindliche Text, bereist in einer Exceldatei vorhanden ist.
Anbei findet ihr meinen bisherigen Code, allerdings weiß ich jetzt nicht weiter. Die find what Methode arbeitet ja nicht mit Variablen. Zudem soll mir, wenn der Text bereist enthalten sein sollte, die Zeile mittels MSGBox mitgeteilt werden.
Wie sollte ich am besten weiter an die Sache gehen?
Gruß Markus
Sub prüfen()
Const Datei = "Test.xlsx" 'Name der Exceldatei
Const Path = "C:\Users\xxx\Downloads\Excel Addin\E_Mail\" 'Pfad, wo die Exceldatei liegt
Dim xlApp As Excel.Application 'Excel deklarieren
Dim xlwb As Workbook 'Workbook deklarieren
Dim WkSh As Worksheet 'Arbeitsblatt deklarieren
Dim a As Integer 'Variable für den Suchwert
Dim UF As Object 'Userform in der Outlook deklarieren
Dim lastrow As Integer 'Variable für letzte Zeile
Set UF = Export 'Usferom von Outlook ansprechen
Set xlApp = CreateObject("Excel.Application") 'Variable für Excel
Set x1wb = GetObject(Path & Datei) 'Varibale für den Speicherort und den _
Dateinamen
Set WkSh = x1wb.Worksheets("Hallo") 'Variable für das Arbeitsblatt in dem gesucht _
werden soll
Set a = UF.TextBox1.Text 'Suchvariable erhält Suchtext
lastrow = WkSh.Range("E" & WkSh.Cells(WkSh.Rows.Count, 2).End(xlUp).Row )
WkSh.UnProtect ("cc") 'Blattschutz aufheben
'Wenn Suchwert in Bereich E9 bis lastrow, dann
MsgBox "Wert befindet sich bereist in der Datenbank Zeile 4711 "
'Sonst
'Export.Show
x1wb.Application.Visible = True 'Exceldatei öffnen
x1wb.Parent.Windows(1).Visible = True
x1wb.Parent.Windows(1).Close savechanges:=False 'Excel wieder schließen ohne Speichern
xlApp.Quit 'Excelprogramm schließen
Set WkSh = Nothing 'Variablen löschen
Set WkBk = Nothing 'Variablen löschen
Set xlApp = Nothing 'Variablen löschen
End Sub