Letzte Frage für heute :-)
Meine Arbeitsmappe besteht aus zwei Tabellen. Eine für Rechnungen und eine für Reservierungen. Ein Macro sorgt dafür, dass nicht nur alle Daten aus der Rechnung in Outlook übernommen werden, sondern auch die Rechnung selbst als Anlage gespeichert wird. Mein Macro hierfür sieht folgendermaßen aus:
Dim trOlApp As New Outlook.Application
Dim trNamespace As Outlook.Namespace
Dim trFolder As Outlook.MAPIFolder
Dim trItem As Outlook.ContactItem
Dim trArre As Worksheet
Dim trReser As Worksheet
Dim trAttachments As Outlook.Attachments
Dim wsReser As Worksheet
Set trNamespace = trOlApp.GetNamespace("MAPI")
Set trFolder = trNamespace.GetDefaultFolder(olFolderContacts).Folders("Pension")
Set trItem = trFolder.Items.Add
Set trAttachments = trItem.Attachments
Set trArre = ThisWorkbook.Sheets("Archiv-Rech")
Set trRech = ThisWorkbook.Sheets("Erfassung-Rech")
Set wsRech = ThisWorkbook.Sheets("Rechnung")
trAttachments.Add ("D:\Pension\Rechnungen\" & "Rechnung-Sachsenzimmer" & "-" & wsRech.Range("C22") & ".pdf")
Rem Stop
With trItem
.FileAs = trRech.Range("B19") & " " & trRech.Range("B18")
.FullName = trRech.Range("B19") & " " & trRech.Range("B18")
.Body = "______________________________________________________________" & Chr(10) & Chr(10) & "NEUER VORGANG ***** " & Date & "-" & Time & " ***** NEUER VORGANG" & Chr(10) & "______________________________________________________________" & Chr(10) & Chr(10) & Chr(187) & " Bemerkung:" & " " & trRech.Range("B26") & Chr(10) & Chr(10) & Chr(187) & " " & "Übernachtung vom: " & trRech.Range("B3") & " bis " & trRech.Range("B4") & " für " & trRech.Range("H5") & " Personen" & Chr(10) & Chr(10) & Chr(187) & " Zahlbetrag: " & trRech.Range("H7") & " Euro" & Chr(10) & Chr(10)
.BusinessAddress = trRech.Range("B21")
.BusinessAddressCity = trRech.Range("B24")
.BusinessAddressPostalCode = trRech.Range("B23")
.BusinessAddressStreet = trRech.Range("B22")
.BusinessFaxNumber = trRech.Range("B30")
.BusinessTelephoneNumber = trRech.Range("B29")
.CompanyName = trRech.Range("B21")
.Email1Address = trRech.Range("B25")
.Email1DisplayName = trRech.Range("B19") & " " & trRech.Range("B18")
.Save
End With
Wenn ich nun das gleiche mit den Reservierungsdaten mache, habe ich bei einer Person 2 Einträe in Outlook. Der Kontakt wird also einmal bei der Erstellung der Rechnung und bei der Erstellung des Angebots in Outlook hinterlegt. Ich möchte aber, dass Excel erst schaut ob schon ein Eintrag mit der Kombination aus Name, Vorname, und PLZ besteht. Sollte dies der Fall sein, soll er nur die fehlenden Daten ergänzen.
Frage: ist dies überhaupt möglich?
Eine weiter Frage wäre, ob es eine Funktion der Autovervollständigung gibt sodass Excel bei Übereinstimmung von Name und Vorname die Daten aus dem Outlook-Adressbuch übernimmt oder den entsprechenden Eintrag von Outlook öffnet.
Gruß,
Thomas