Avatar billede aare_o Nybegynder
28. juli 2011 - 19:02 Der er 6 kommentarer og
1 løsning

Kopiering af data i Outlook kontaktpersoner

Hej

Jeg har på arbejdet overført ca. 200 numre fra vores global address list til min private, som jeg så synkroniserer ned på min telefon. Mit problem er, at den ikke overfører folks initialer GAL'en til mit private adressekartotek og dermed min telefon. Jeg vil derfor høre, om der er nogen der har eller kan lave en macro til Outlook, der kopier bogstaverne før @ fra mailadressen til mellemnavns feltet, i en parentes?
Avatar billede supertekst Ekspert
30. juli 2011 - 11:48 #1
Mailadressen er altså blevet overført?

Er det stadig aktuelt?
Avatar billede supertekst Ekspert
30. juli 2011 - 17:44 #2
Forslag:
Sub flytFraEMail()
Dim mailApp, nameSpace, kontakter, kontakt
Dim antalKontakter As Long
Dim mail As String, p As Byte, mailDel As String
    Set mailApp = CreateObject("Outlook.Application")
    Set nameSpace = mailApp.GetNamespace("MAPI")
    Set kontakter = nameSpace.GetDefaultFolder(olFolderContacts)
   
    antalKontakter = kontakter.Items.Count
   
    For Each kontakt In kontakter.Items
        mail = kontakt.Email1Address
        p = InStr(mail, "@")
        If p > 0 Then
            mailDel = Left(mail, p - 1)
            kontakt.MiddleName = "(" & mailDel & ")"
            kontakt.Save
        End If
    Next
Avatar billede aare_o Nybegynder
03. august 2011 - 09:31 #3
Virker næsten.

1. Da mailen kommer fra en GAL, skriver den i variablen "mail" stigen der til og ikke mail adressen. eks: "/0=xxx/ou=DKBA/cn=Recipients/cn=xxxx" De sidste x'er er initialerne.
2. Kan du lave den sådan, at det kun sker på dem jeg har markeret :-)
Avatar billede supertekst Ekspert
03. august 2011 - 09:51 #4
Et forsøg værd..

1. Skulle være rimelig let

2. Hvad/hvordan vil du markere?
-. Alternativt: Kunne der stilles et programmeret spørgsmål
Avatar billede supertekst Ekspert
03. august 2011 - 10:38 #5
1:Til test

Rem Version 2
Sub flytFraEMail()
Const søgeStreng = "Recipients/cn="
Dim mailApp, nameSpace, kontakter, kontakt
Dim antalKontakter As Long
Dim sti As String, mail As String, p As Byte, mailDel As String
    Set mailApp = CreateObject("Outlook.Application")
    Set nameSpace = mailApp.GetNamespace("MAPI")
    Set kontakter = nameSpace.GetDefaultFolder(olFolderContacts)
   
    antalKontakter = kontakter.Items.Count
   
    For Each kontakt In kontakter.Items
        sti = kontakt.Email1Address
        p = InStr(sti, søgeStreng)
       
        If p > 0 Then
            mailDel = Mid(sti, Len(søgeStreng) + 1)
            kontakt.MiddleName = "(" & mailDel & ")"
            kontakt.Save
        End If
    Next
End Sub
Avatar billede aare_o Nybegynder
14. august 2011 - 20:18 #6
Tak supertekst! Så fik jeg det til at virker. Smid et svar :-)
Avatar billede supertekst Ekspert
14. august 2011 - 22:26 #7
Fint, selv tak - samt et svar
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester