07. maj 2004 - 11:32Der er
15 kommentarer og 1 løsning
Angiv "Kategori" på mail vha. VBA (Outlook)
Hej,
Jeg ønsker at give nogle brugere mulighed for at gemme en mail som .msg-fil. Det skal være således at hvis brugeren er ved at sende en mail til en kunde, kan han vælge at gemme mailen i vores generelle dokumentstyringssystem. Dvs at filen gemmes i en en bestem mappe på nettet som har navn efter kundens ID. (f.eks. X:\dokumenter\12345\Brev.doc)
Dvs at brugeren skal på en eller anden måde fortælle Outlook, at den aktuelle mail skal gemmes på KundeID 12345.
Jeg kan få det til at virke hvis brugeren går i Vis->Indstillinger->Kategorier og indtaster 12345. Så har jeg lavet en event på Item_Send, som sørger for resten.
Problemet er nu, at jeg gerne vil gøre det lidt nemmere for brugeren. Jeg har derfor lavet en knap, som de kan klikke på (inde i den åbne mail), hvorefter en inputbox spørger efter KundeID.
Og her går jeg så i stå!
Hvordan gemmer jeg den indtastede værdi (kundeID) i kategorien på AKTUELLE mail. Jeg har både problemer med at referere til den aktuelle mail og problemer med at skrive i kategorien.
Problemet kunne helt løses, hvis man bare kunne få Kategori-feltet placeret på mailen, ligesom man kan med aftaler/møder. Men det har jeg ikke kunnet finde blandt tilgængelige tools til værktøjslinierne.
Hvis du lægger følgende kode i Outlook, og kalder koden fra en kanp på en værktøjslinie i en ny mail så spørger den brugeren om kundenummer og putter kundenummeret ned som en kategori.
Sub MailKategories() Dim itm As MailItem
Set itm = Application.ActiveInspector.CurrentItem itm.Categories = InputBox("Indtast kundenummer!", "Kundenummer") End Sub
Jeg har lige et tillægsspm, som du selvfølgelig også nok skal få point for (100)!
Hvordan distribuere jeg bedst denne makro (inkl knap og hændelsen Item_Sent) til alle 50-60 brugere? Kan man lave et script, som kan lægges i brugernes logon-script?
Hej. Jeg er da meget glad for at kunne hjælpe dig og mange andre herinde, med små kode stumper der kan redde verden :-) Hvad angår Karma, så har det også tit undret mig, men jeg går ikke så meget op idet at det gør mig noget.
Hvad angår distribution, så skal du nok benytte den fil der hedder VbaProject.OTM det er der alt dit kode snask det gemmer sig når du laver det i Outlook. Denne fil kan du sikker vha. logon scripts eller lign. (GPO) distribuere ud til brugerne. Problemet ved denne løsning, er blot at hvis der er externe referencer til andre programmer (word, excel) så kommer de ikke med. Alternativt så kan du jo lave et setup program vha. Microsoft Visual Studio Installer og her udrulle den msi fil vha. GPO.
Well, jeg har gjort mit hvad angår karma. Men du har ret I, at det skal tages med forbehold.
VbaProject.OTM er måske nok idet jeg kan undlade referencer. Jeg har godt en en til ADO for at kunne gemme oplysningerne i en Access db, men den kan skrives om, så den ikke behøver referencer.
Nope - knappen kommer ikke med, men vent lige 3 sek. så giver jeg dig et eksempel der opretter det, når der startes en ny mail (det mener jeg at have liggende et eller andet sted.)
Tag dette kode og smid ind i ThisOutlookSession kode modulet.
Dim WithEvents insps As Inspectors
Private Sub Application_Startup() Set insps = Application.Inspectors End Sub
Private Sub insps_NewInspector(ByVal Inspector As Inspector) Dim item As CommandBarControl Dim cmdBar As CommandBar Dim cmdBtn As CommandBarButton Set cmdBar = Inspector.CommandBars("Standard")
For Each item In cmdBar.Controls If item.Tag = "MailBtn" Then item.Delete End If Next
Set cmdBtn = cmdBar.Controls.Add(msoControlButton, , , , True) cmdBtn.Tag = "MailBtn" cmdBtn.Caption = "Set CustomerID" cmdBtn.OnAction = "MailKategories" cmdBtn.Visible = True End Sub
og smid så følgende kode ind i et modul for sig selv.
Public Sub MailKategories() Dim itm As MailItem
Set itm = Application.ActiveInspector.CurrentItem itm.Categories = InputBox("Indtast kundenummer!", "Kundenummer") End Sub
Dejligt at se at du er glad for hjælpen - det ændrer dog ikke på at det kun er tilladt at uddele 200 points pr. spørgsmål. Det andet spørgsmål er lukket, og pointsne bliver snarligt ført tilbage.
Hvad sker der? Prøv lige at læse spørgsmålet igennem inden du begynder at lukke spm!
Det, som de 150 point er givet for, er for det tillægsspm, som jeg stiller 07/05-2004 12:54:38 og som jeg under alle omstændigheder ville have oprettet som nyt spm. Men da jeg havde indtryk af at Kedde65 havde styr på tingene, så kunne jeg lige så godt spørge ham direkte, nu hvor jeg havde hans opmærksomhed. Hele den sidste del af dette spm, har intet med det oprindelige spm at gøre. Det oprindelige spm går på events i Outlook. Det andet går på at distribuere løsningen til 50 brugere.
Der er tydeligvis tale om en misforståelse, så jeg opretter da gerne et nyt spm, hvor jeg spørger om det samme som i 07/05-2004 12:54:38. Så kan Kedde65 jo bare svare og få sine point. Skal jeg gøre dette? Eller kan du åbne det andet spm igen?
Nej nu må I altså tage jer sammen som administratorer. Jeg har ikke noget problem med at undvære de sølle 150 point, men tag lige og læse det hele igennem inden du begynder ukritisk at lukke spørgsmål.
Kunne være det var tiden til at smutte herfra Ekspertens ellers hyggelige svære... Razor lev opp til dit ansvar, og tænk/læs før du handler!
Thomas>> Jeg vil da enbefale dig at spørge om det samme en gang til i et nyt spørgemål, det er vel tilladt?
det gør jeg også, men jeg vil lige give Razor en chance for at forsvare sin forhastede beslutning eller genåbne det andet spm - det ville klæde ham, men han kan jo være gået offline, så han ikke har set vores kommentarer. Så jeg lader tvivlen komme ham tilgode og giver ham til i morgen. Du skal i hvert fald have dine point - om ikke andet, så af principielle grunde.
Jeg har vist været lidt for hurtigt ude her. Det der ved en hurtig gennemgang lignede noget der ikke måtte finde sted ifht. reglerne, er ved nærmere eftersyn ganske lovligt. Det er jeg ked af, og håber i har fundet ud af det.
Hvis I mener I har points i klemme skal i være velkommen til at kontakte mig på min private email (mail@razor.dk), så vil jeg sørge for at hive fat i admin, så vi kan få det klaret.
(grunden til, at jeg først reagerer nu, er at jeg har haft umenneskeligt travlt med en opgave på universitetet, samt lancering af et produkt i min firma)
undskyldning modtaget - det er rart at se, at en CoAdmin kan erkende, at de har været for hurtigt ude :o)
Jeg har revideret den 'sure' karma, som havde givet dig (måske lidt for hurtigt, haha)
Så vidt jeg kan se, er der ikke nogle point i klemme nogle steder.
Case closed og fortsat god weekend til Jer begge.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.