grupy

Pytania, uwagi, problemy związane z Microsoft Office Outlook, wersje 2007, 2010, 2013 i 2016.

Moderator: Moderatorzy

grupy

Postprzez miqdoox » Pt 23.01.2009 14:46

Mam banalne pytanie: jak dodać kontakt do grupy???
I czy da się stworzyć np z maila gdzie jest duuużo odbiorców, jedną grupę??
miqdoox
 
Posty: 8
Dołączył(a): Pt 23.01.2009 13:56

Re: grupy

Postprzez pmsocho » Pt 23.01.2009 17:51

Witaj miqdoox,

Mam banalne pytanie: jak dodać kontakt do grupy???

Przejdź do Kontaktów w Outlooku następnie Otwórz listę dystrybucyjną do której chcesz dodać członków. Na karcie Lista dystrybucyjna kliknij przycisk Wybierz członków. W okienku które się pojawi możesz wybrać osobę z kontaktów albo wpisać ręcznie adres którego nie masz w kontaktach.

I czy da się stworzyć np z maila gdzie jest dużo odbiorców, jedną grupę??

W łatwy sposób nie da się tego szybko zrobić. Musiałbyś mieć do tego jakieś makro.
pmsocho
 
Posty: 766
Dołączył(a): Śr 24.01.2007 01:50
Lokalizacja: Sochaczew

Re: grupy

Postprzez OShon » Pt 23.01.2009 19:39

Pytanie tylko czy chcesz tworzyć "Listę dystrybucyjną" na podstawie zaznaczonych kontaktów w książce adresowej czy wiadomości?
(to drugie jest trudniejsze i wykonywało by się dłużej, ponieważ trzeba by sprawdzić DO i DW dla wszystkich adresów z zaznaczonych wiadomości z wyeliminowaniem powtarzających się odbiorców).
Obrazek
Oskar Shon - MVP Office Dev. 11/20, 3x MCC, 4/9/22 TechNet
Forum moderator: Outlook.pl | ExcelForum.pl | MSDN dział VBA
Zobacz fajne dodatki: Outlooka, Excela, Worda lub PowerPointa
OShon
 
Posty: 10589
Dołączył(a): Cz 19.10.2006 08:31
Lokalizacja: Projekt autorski VBATools.pl

Re: grupy

Postprzez pmsocho » Pt 23.01.2009 20:34

@ OShon

Jeśli grupa miałaby być tworzona spośród kontaktów które już są w Outlooku to można to zrobić bez makra :)
Miqdoox pytał o możliwość utworzenia grupy z odbiorców maila - a tego bez makra zrobić szybko się nie da...
pmsocho
 
Posty: 766
Dołączył(a): Śr 24.01.2007 01:50
Lokalizacja: Sochaczew

Re: grupy

Postprzez OShon » Pt 23.01.2009 20:58

pmsocho napisał(a):Jeśli grupa miałaby być tworzona spośród kontaktów które już są w Outlooku to można to zrobić bez makra :)
Miqdoox pytał o możliwość utworzenia grupy z odbiorców maila - a tego bez makra zrobić szybko się nie da...


hehe :lol:
I tu się da bez makra i tam
Tylko w przypadku Książki adresowej kopiowanie można zastąpić wskazaniem adresu a z wiadomości kopiowaniem adresów mailowych z ręki.

Makro można zrobić tak, aby można było zaznaczyć adresatów bądź wiadomości email, z których to adresy zostaną zaimportowani do listy dystrybucyjnej.
Jak i w pierwszym i w drugim przypadku.
Obrazek
Oskar Shon - MVP Office Dev. 11/20, 3x MCC, 4/9/22 TechNet
Forum moderator: Outlook.pl | ExcelForum.pl | MSDN dział VBA
Zobacz fajne dodatki: Outlooka, Excela, Worda lub PowerPointa
OShon
 
Posty: 10589
Dołączył(a): Cz 19.10.2006 08:31
Lokalizacja: Projekt autorski VBATools.pl

Re: grupy

Postprzez pmsocho » Pt 23.01.2009 21:08

No tak, ale jeśli grupa miałaby być utworzona na podstawie kontaktów to nie trzeba ich ręcznie wyklikiwać czy też kopiować pojedynczo. Można za jednym zamachem dodać do grupy kilkadziesiąt kontaktów :)
Nie da się tak niestety na podstawie adresatów maila - przynajmniej ja nie doszedłem jak można by było zrobić to szybko bez makra.
pmsocho
 
Posty: 766
Dołączył(a): Śr 24.01.2007 01:50
Lokalizacja: Sochaczew

Re: grupy

Postprzez OShon » Pt 23.01.2009 21:17

pmsocho napisał(a):jeśli grupa miałaby być utworzona na podstawie kontaktów to nie trzeba ich ręcznie wyklikiwać czy też kopiować pojedynczo

Spróbuj to zrobić w 2007 :D
bo w 2003 można je było po prostu przenieść do listy dystrybucyjnej mychą.
Obrazek
Oskar Shon - MVP Office Dev. 11/20, 3x MCC, 4/9/22 TechNet
Forum moderator: Outlook.pl | ExcelForum.pl | MSDN dział VBA
Zobacz fajne dodatki: Outlooka, Excela, Worda lub PowerPointa
OShon
 
Posty: 10589
Dołączył(a): Cz 19.10.2006 08:31
Lokalizacja: Projekt autorski VBATools.pl

Re: grupy

Postprzez pmsocho » Pt 23.01.2009 21:29

Kiedyś przypadkiem do tego doszedłem. Już piszę instrukcję:

Pierwszy krok to dostosowanie menu tak aby pokazywane było polecenie Nowa wiadomość dla kontaktu. W 2003 polecenie to nie było ukryte i znajdowało się w menu Akcje - nie wiem dlaczego w 2007 je schowali :)
obrazek-01.gif
obrazek-01.gif (14.42 KiB) Przeglądane 65989 razy


Następnie w kontaktach zaznaczasz tyle kontaktów ile sobie życzysz a potem klikasz właśnie w to polecenie. Otworzy się okienko nowej wiadomości gdzie w polu DO będą wpisane wszystkie wybrane wcześniej kontakty. Trzeba je wszystkie zaznaczyć i skopiować. Po skopiowaniu można zamknąć tego pustego maila bez zapisywania zmian.
Teraz tworzymy nową grupę dystrybucyjną i klikamy przycisk Wybierz członków. W polu Członkowie robimy wklej (to wklei nam wszystkie skopiowane wcześniej kontakty). Po kliknięciu OK wszystkie wklejone kontakty pojawiają się w grupie :)
pmsocho
 
Posty: 766
Dołączył(a): Śr 24.01.2007 01:50
Lokalizacja: Sochaczew

Re: grupy

Postprzez OShon » Pt 23.01.2009 21:37

pmsocho napisał(a):Można za jednym zamachem dodać do grupy kilkadziesiąt kontaktów
jednak nie jednym zamachem :)

Po weekendzie pomyślę jak to wyłuskać.
Obrazek
Oskar Shon - MVP Office Dev. 11/20, 3x MCC, 4/9/22 TechNet
Forum moderator: Outlook.pl | ExcelForum.pl | MSDN dział VBA
Zobacz fajne dodatki: Outlooka, Excela, Worda lub PowerPointa
OShon
 
Posty: 10589
Dołączył(a): Cz 19.10.2006 08:31
Lokalizacja: Projekt autorski VBATools.pl

Re: grupy

Postprzez OShon » Pt 23.01.2009 22:55

No niech wam będzie 8)
Zaznaczamy sobie X wiadomości i uruchamiamy to makro.
Może by z tego zrobić artykuł dla potomnych.

Kod: Zaznacz cały
Sub zrob_liste_dla_zaznaczonych_wiadomosci()
If Application.ActiveExplorer.CurrentFolder.DefaultItemType <> 0 Then Exit Sub
Dim Message As String, nazwa_listy As String
Message = "Podaj nazwe dla zakładanej listy dystrybucyjnej." & vbCr _
        & "Wszystkie zaznaczone kontakty zostaną podłączone do tej grupy."
nazwa_listy = Trim(InputBox(Message, " Tworzenie listy dystrybucyjnej"))
nazwa_listy = Replace(nazwa_listy, ";", " ")
nazwa_listy = Replace(nazwa_listy, "(", vbNullString)
nazwa_listy = Replace(nazwa_listy, ")", vbNullString)

If Len(Trim(nazwa_listy)) = 0 Then Exit Sub
   
Dim oContactFolder As MAPIFolder
Dim oDistList As DistListItem
Dim oMailItem As MailItem
Dim oRecipients As Recipients
Dim oRecipient As Recipient
Dim item As MailItem
Dim oNewContact As ContactItem
           
Set oContactFolder = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderContacts)
Set oDistList = oContactFolder.Items.Add(olDistributionListItem)
With oDistList
    .DLName = nazwa_listy
    .Save
End With

Dim MailAdres, oReply, oRecipients2, oRecip
Dim adresy$, adres$
Dim NoDupes As New Collection
Dim I As Long, J As Long
Dim Swap1, Swap2

On Error GoTo ErrMessage
For Each item In Application.ActiveExplorer.Selection
DoEvents
    Set MailAdres = item
    Set oReply = item.Reply
    Set oRecipients2 = oReply.Recipients
   
'adresy DO
    For Each oRecip In oRecipients2
        NoDupes.Add oRecip.Address
    Next
'adresy DW
    For I = 1 To MailAdres.Recipients.Count
        NoDupes.Add MailAdres.Recipients(I).Address
    Next I
Next
    Set MailAdres = Nothing
    Set oReply = Nothing
    Set oRecipients2 = Nothing

    For I = 1 To NoDupes.Count - 1
    DoEvents
        For J = I + 1 To NoDupes.Count
            If NoDupes(I) > NoDupes(J) Then
                Swap1 = NoDupes(I)
                Swap2 = NoDupes(J)
                NoDupes.Add Swap1, Before:=J
                NoDupes.Add Swap2, Before:=I
                NoDupes.Remove I + 1
                NoDupes.Remove J + 1
            End If
        Next J
    Next I

    Set oDistList = oContactFolder.Items(nazwa_listy)
    Set oMailItem = Application.CreateItem(olMailItem)
    Set oRecipients = oMailItem.Recipients
   
    adres = ""
    For J = 1 To NoDupes.Count
    DoEvents
        If adres = NoDupes(J) Then GoTo nastepny
        oRecipients.Add NoDupes(J)
        'adresy = adresy & NoDupes(J) & ";"
        adres = NoDupes(J)
nastepny:
    Next J

'Debug.Print adresy
    oRecipients.ResolveAll

With oDistList
    .AddMembers oRecipients
    .Save
    .Display 0
End With

    Set oDistList = Nothing
    Set oMailItem = Nothing
    Set oRecipients = Nothing

Exit Sub
ErrMessage:
MsgBox "Błąd procedury " & Err.Number & vbCr _
       & Err.Description, vbExclamation, " Informacja o błędzie"
End Sub

Może wypadało by ten kod rozszerzyć, aby w ten sam sposób dodawać adresy z książki adresowej (aby było łatwiej niż napisał pmsocho) :twisted:
Obrazek
Oskar Shon - MVP Office Dev. 11/20, 3x MCC, 4/9/22 TechNet
Forum moderator: Outlook.pl | ExcelForum.pl | MSDN dział VBA
Zobacz fajne dodatki: Outlooka, Excela, Worda lub PowerPointa
OShon
 
Posty: 10589
Dołączył(a): Cz 19.10.2006 08:31
Lokalizacja: Projekt autorski VBATools.pl

Re: grupy

Postprzez miqdoox » N 25.01.2009 00:43

To co poleca Pmsocho działa tylko dla zapisanych już kontaktów. A mi chodzi o to, że mam naprzykład maila z 60 adresami, z których więszość jest nazwana (np. Jan Kowalski), a tylko niektóre mają posatć zwykłych adresów typu: 1234@jh.pl. Jak z tych nazwanych adresów zrobić kontakty, ale w taki sposób, żeby nie klikać na każdy z osobna?

PS. Może to głupio zabrzmi, ale jak działają makra??? I gdzie się je wpisuje....?
PS2. Co to jest lista dystrybucyjna???
miqdoox
 
Posty: 8
Dołączył(a): Pt 23.01.2009 13:56

Re: grupy

Postprzez pmsocho » N 25.01.2009 02:11

Co to jest lista dystrybucyjna???

Lista dystrybucyjna w Outlooku to obiekt który zawiera wiele kontaktów tak aby można było szybko wysłać na przykład maila do wszystkich osób znajdujących się w tej liście. W tym wątku nazwa lista dystrybucyjna była używana zamiennie z grupą.
Może to głupio zabrzmi, ale jak działają makra??? I gdzie się je wpisuje....?

W tych artykułach masz to opisane
Uruchamianie, zabezpieczanie i dystrybucja makr (cz.I)
Uruchamianie, zabezpieczanie i dystrybucja makr (cz.II)
Uruchamianie, zabezpieczanie i dystrybucja makr (cz.III)

Jak z tych nazwanych adresów zrobić kontakty, ale w taki sposób, żeby nie klikać na każdy z osobna?

W pierwszym poście napisałeś, że chciałbyś zrobić grupę na podstawie otrzymanego maila. Razem z OShonem zrozumieliśmy, że chciałbyś po prostu na podstawie adresatów maila utworzyć listę dystrybucyjną. OShon w poście wyżej napisał Ci makro które robi dokładnie to o co pytałeś w pierwszym poście.

Chyba, że pytanie było źle sformułowane i chciałbyś wszystkich adresatów otrzymanego maila dorzucić do kontaktów jako osobne obiekty - czy tak?
pmsocho
 
Posty: 766
Dołączył(a): Śr 24.01.2007 01:50
Lokalizacja: Sochaczew

Re: grupy

Postprzez miqdoox » Wt 27.01.2009 01:43

[/quote
pmsocho napisał(a):Chyba, że pytanie było źle sformułowane i chciałbyś wszystkich adresatów otrzymanego maila dorzucić do kontaktów jako osobne obiekty - czy tak?
]

Sorry za moje roztargnienie. Po koloi. Chcę zrobić z jednnym otrzymanym mailem dwie rzeczy. Pierwsza: Zapisać każdy kontakt z osobna do ksiązki adresowej. W związku z tym mam pytanie czy da się to zrobić za jednym zamaczem czy też każdy po koli zapisywać
Druga sprawa. To z tych adresów, które zapiszę stworzyć grupę/listę dystrybucyjną.
Mam nadzieję, że teraz jaśniej...
Pozdrawiam
miqdoox
 
Posty: 8
Dołączył(a): Pt 23.01.2009 13:56

Re: grupy

Postprzez pmsocho » Wt 27.01.2009 01:50

Makro które napisał OShon robi i jedno i drugie za jednym zamachem.
pmsocho
 
Posty: 766
Dołączył(a): Śr 24.01.2007 01:50
Lokalizacja: Sochaczew

Re: grupy

Postprzez OShon » Wt 27.01.2009 11:12

No dobra - co robi makro.

  • sprawdza czy jesteś w folderze wiadomości
  • tworzy listę dystrybucyjną o nazwie jaka została podana w InputBoxie
  • przerzuca do tymczasowej tablicy adresy osób z pół DO i DW z zaznaczonych wcześniej wiadomości (można ograniczyć i wyłączyć to drugie)
  • sortuje tą tablice aby adresy poukładane były alfabetycznie (sortowanie bąbelkowe)
  • usuwa z kolekcji adresy z duplikowane (bo X zaznaczonych wiadomości może posiadać tych samych odbiorców)
  • dodaje adresy do utworzonej wcześniej listy dystrybucyjnej i zapisuje zmiany
  • pokazuje, otwierając listę dystrybucyjną (można wyłączyć)
Nic więcej. :D

Zapisywanie samych kontaktów jak już nie raz na tym forum informowałem, jest problematyczne.
Oczywiście można to zrobić ale przeczytajcie poniższy cytat.
OShon napisał(a):... Outlook otrzymując adres email może nie otrzymać nazwy wyświetlanej adresu - to też mechanizm jaki miałby dodawać adresy do książki adresowej tworzył by pełen śmietnik danych na pierwszy rzut oka nie do ogarnięcia.
Nazwa wyświetlana to pole nie obowiązkowe jakie wpisujesz podczas konfiguracji konta. Jeśli ktoś nie uzupełni tego pola to wiadomość będzie zawierała sam adres.
Co komu po adresie np "123@o2.pl" i temu podobnych. I to jest odpowiedź dlaczego w MSOutlook'u nie ma tej funkcjonalności.

A wiec rzecz gustu - ja nie chce mieć śmietnika nieznanych adresatów w Outlooku (nie mogę sobie na to pozwolić z moimi 40000 adresami z krwi i kości, opisanych i uzupełnionych).
Obrazek
Oskar Shon - MVP Office Dev. 11/20, 3x MCC, 4/9/22 TechNet
Forum moderator: Outlook.pl | ExcelForum.pl | MSDN dział VBA
Zobacz fajne dodatki: Outlooka, Excela, Worda lub PowerPointa
OShon
 
Posty: 10589
Dołączył(a): Cz 19.10.2006 08:31
Lokalizacja: Projekt autorski VBATools.pl

Re: grupy

Postprzez mercy83 » Śr 19.05.2010 11:44

Jeśli chodzi o grupy to ja mam takie osobiste pytanie. Po co komu grupy w kontaktach jak nie da się kontaktu (nie chodzi mi o adres e-mail) przyporządkować do konkretnej grupy.
Owszem - da się tworzyć grupy w w Menu kontakty prawym przyciskiem myszy, ale tworząc jakikolwiek kontakt nie da się przypisać mu wcześniej stworzonej grupy. Jak to rozwiązać w inny sposób?
mercy83
 
Posty: 3
Dołączył(a): Śr 19.05.2010 11:41

Re: grupy

Postprzez OShon » Śr 19.05.2010 14:59

mercy83 napisał(a):da się tworzyć grupy w w Menu kontakty prawym przyciskiem myszy, ale tworząc jakikolwiek kontakt nie da się przypisać mu wcześniej stworzonej grupy. Jak to rozwiązać w inny sposób?

Nie da się rozwiązać :o
Kontakt nie ma listy grup do której jest przywiązany.
Natomiast Grupa zawiera listę kontaktów lub adresów tworzących grupę.
Obrazek
Oskar Shon - MVP Office Dev. 11/20, 3x MCC, 4/9/22 TechNet
Forum moderator: Outlook.pl | ExcelForum.pl | MSDN dział VBA
Zobacz fajne dodatki: Outlooka, Excela, Worda lub PowerPointa
OShon
 
Posty: 10589
Dołączył(a): Cz 19.10.2006 08:31
Lokalizacja: Projekt autorski VBATools.pl


Powrót do Microsoft Outlook 2007 / 2010 / 2013 / 2016

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 18 gości