Makros im Outlook
Moin Leute,
ich habe einen SBS2003 inkl. Outlook2003.
Ich hoffe, mir kann jemand bei der Erstellung von Makros behilflich sein.
Folgendes möchte ich erreichen:
Ich brauche eine Schaltfläche auf einem Kontakt-Formular (z.B. mit der Bezeichnung "Neue Buchung")
Wenn darauf geklickt wird, dann soll folgendes passieren:
1.) Es wird eine neue Aufgabe im Ordner "Kunden Buchungen" angelegt
2.) In dieser Aufgabe ist automatisch das Feld "Kontakt" gefüllt mit dem Kontakt-Namen des gerade aktiven Kontakts.
Was habe ich bereits?
- Angepasstes Kontakt-Formular mit der (noch nutzlosen) Schaltfläche "Neue Buchung"
- Verlinkung der "Aktivitäten" zum Ordner "Kunden Buchungen"
- Angepasstes Aufgaben-Formular (enthält u.a. das Feld "Kontakt"
Was möchte ich erreichen?
- Zu den Kunden-Kontakten sollen alle entsprechenden Buchungen verknüpft werden können
- So kann man jederzeit sehen, welche Aufträge für den Kunden erfüllt wurden und z.B. wie hoch die Schlußrechnungs-Summe war
- Im zweiten Schritt soll dann noch ein Ausdruck möglich sein, der nach verschieden Kriterien sortiert/gefiltert wird. (aber dazu später mehr).
Was fehlt?
Nun brauche ich ein Makro, was beim Klicken auf die Schaltfläche "Neue Buchung" die oben genannten Funktionen ausführt
Vielen Dank schon mal für Eure Hilfe,
Gruß CeMeNt
ich habe einen SBS2003 inkl. Outlook2003.
Ich hoffe, mir kann jemand bei der Erstellung von Makros behilflich sein.
Folgendes möchte ich erreichen:
Ich brauche eine Schaltfläche auf einem Kontakt-Formular (z.B. mit der Bezeichnung "Neue Buchung")
Wenn darauf geklickt wird, dann soll folgendes passieren:
1.) Es wird eine neue Aufgabe im Ordner "Kunden Buchungen" angelegt
2.) In dieser Aufgabe ist automatisch das Feld "Kontakt" gefüllt mit dem Kontakt-Namen des gerade aktiven Kontakts.
Was habe ich bereits?
- Angepasstes Kontakt-Formular mit der (noch nutzlosen) Schaltfläche "Neue Buchung"
- Verlinkung der "Aktivitäten" zum Ordner "Kunden Buchungen"
- Angepasstes Aufgaben-Formular (enthält u.a. das Feld "Kontakt"
Was möchte ich erreichen?
- Zu den Kunden-Kontakten sollen alle entsprechenden Buchungen verknüpft werden können
- So kann man jederzeit sehen, welche Aufträge für den Kunden erfüllt wurden und z.B. wie hoch die Schlußrechnungs-Summe war
- Im zweiten Schritt soll dann noch ein Ausdruck möglich sein, der nach verschieden Kriterien sortiert/gefiltert wird. (aber dazu später mehr).
Was fehlt?
Nun brauche ich ein Makro, was beim Klicken auf die Schaltfläche "Neue Buchung" die oben genannten Funktionen ausführt
Vielen Dank schon mal für Eure Hilfe,
Gruß CeMeNt
Please also mark the comments that contributed to the solution of the article
Content-ID: 107472
Url: https://administrator.de/contentid/107472
Printed on: October 9, 2024 at 15:10 o'clock
6 Comments
Latest comment
HI CeMeNt,
ich find das ist wie mit allem: Vorkauen werd ich dir aber nicht alles
Also im Kontaktformular folgenden VBScript einfügen (wer Fehler findet, darf sie behalten):
Sub CommandButton1_Click()
Set FolderAufgaben = Application.Session.Folders.Item("Öffentliche Ordner").Folders("Alle öffentlichen Ordner").Folders("Kunden Buchungen")
Set Aufgabe = FolderAufgaben.Items.ADD
Aufgabe.ItemProperties.Item("Kontakt").value = FullName 'Ich würde aber lieber die EntryID des Kontakts eintragen, besser zu identifizieren
Aufgabe.Save
End Sub
hoffe, damit konnte man dir weiter helfen.
Mfg
Trax
ich find das ist wie mit allem: Vorkauen werd ich dir aber nicht alles
Also im Kontaktformular folgenden VBScript einfügen (wer Fehler findet, darf sie behalten):
Sub CommandButton1_Click()
Set FolderAufgaben = Application.Session.Folders.Item("Öffentliche Ordner").Folders("Alle öffentlichen Ordner").Folders("Kunden Buchungen")
Set Aufgabe = FolderAufgaben.Items.ADD
Aufgabe.ItemProperties.Item("Kontakt").value = FullName 'Ich würde aber lieber die EntryID des Kontakts eintragen, besser zu identifizieren
Aufgabe.Save
End Sub
hoffe, damit konnte man dir weiter helfen.
Mfg
Trax
Würde dir wie oben bereits geschrieben, aber vorschlagen, im Aufgabenelement nicht den Namen des Kontakts, sondern die EntryID einzutragen....
Dann würde ich im Aufgabenformular:
Function Item_Open()
Set MyPage = Item.GetInspector.ModifiedFormPages("S.2")
MyPage.TextBox1.Text = Application.Session.GetItemFromID(ItemProperties.Item("Kontakt").value).FullName
MyPage = Nothing
End Function
Auch bei gleichem Namen, wird die Aufgabe sicher nur dem einem Kontakt zugeordnet.
Dann würde ich im Aufgabenformular:
Function Item_Open()
Set MyPage = Item.GetInspector.ModifiedFormPages("S.2")
MyPage.TextBox1.Text = Application.Session.GetItemFromID(ItemProperties.Item("Kontakt").value).FullName
MyPage = Nothing
End Function
Auch bei gleichem Namen, wird die Aufgabe sicher nur dem einem Kontakt zugeordnet.
Morgen CeMeNt,
also hab mir das gerade auch nochmal erst ansehen müssen.....
wie ich das sehe, gibs da grds zwei möglichkeiten für dich das zu realisieren...
1. Du nutzt die bereits im AppointmentItem vorhandene Eigenschaft "Links". Das Standardformular von Aufgaben hat ja bereits ein Feld "Kontakte", dann brauchst du nur im benutzerdefinierten Kontaktformular einen Button einfügen mit (Code nur z.B. keine Ahnung ob der so läuft, mit Appointment hab ich ehrlich gesagt noch nie was machen müssen):
2. oder du machst es wie bereits oben beschrieben. Fehlermeldung ist klar, da in einem Normalen AppointmentItem ja auch kein benutzerdefiniertes Feld "Kontakt" vorhanden ist, welches du ja mit Formular ausführen erzeugst.... eine abfrage mit "if not isnothing" kann da helfen. Der Code oben sollte natürlich nur bei einem bereits durch das Kontaktformular erzeugten AufgabenObjekt funzen.
ich tendiere aber eher zu Variante 1... jetzt sollte Aufgabe mit Display auch angezeigt werden.
Mfg
Trax
also hab mir das gerade auch nochmal erst ansehen müssen.....
wie ich das sehe, gibs da grds zwei möglichkeiten für dich das zu realisieren...
1. Du nutzt die bereits im AppointmentItem vorhandene Eigenschaft "Links". Das Standardformular von Aufgaben hat ja bereits ein Feld "Kontakte", dann brauchst du nur im benutzerdefinierten Kontaktformular einen Button einfügen mit (Code nur z.B. keine Ahnung ob der so läuft, mit Appointment hab ich ehrlich gesagt noch nie was machen müssen):
Sub CommandButton1_Click()
Set FolderAufgaben = Application.Session.Folders.Item("Öffentliche Ordner").Folders("Alle öffentlichen Ordner").Folders("Kunden Buchungen")
Set Aufgabe = FolderAufgaben.Items.Add
Aufgabe.Links.Add(Application.Session.GetItemFromID(EntryID))
' Aufgabe.Save
Aufgabe.Display
End Sub
2. oder du machst es wie bereits oben beschrieben. Fehlermeldung ist klar, da in einem Normalen AppointmentItem ja auch kein benutzerdefiniertes Feld "Kontakt" vorhanden ist, welches du ja mit Formular ausführen erzeugst.... eine abfrage mit "if not isnothing" kann da helfen. Der Code oben sollte natürlich nur bei einem bereits durch das Kontaktformular erzeugten AufgabenObjekt funzen.
ich tendiere aber eher zu Variante 1... jetzt sollte Aufgabe mit Display auch angezeigt werden.
Mfg
Trax