Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Outlook Recipients - mehr als es sein sollten

Begonnen von nimora, April 14, 2016, 14:42:59

⏪ vorheriges - nächstes ⏩

nimora

Hi,

ich zeihe mir die Termine aus Outlook und lege mir die Termin-Teilnehmer erst in ein Array und dann in einen einzigen String, der dann im Feld in der Tabelle abgelegt wird.

Zwei Probleme tauchen dabei auf.

1. Wenn ich mir das zur Kontrolle über debug.print ausgeben lassen, hat das Array des Termins mit einem Teilnehmer und mir als Veranstalter dennoch den Index 2 und wenn ich mir den Inhalt von Index 2 ausgeben lasse, ist dieses leer. Frage also, wo kommt das her? Das zerschießt mir nämlich die if-Abfrage, die den Trenner "/" am Ende des Strings weglassen soll.

2. Es tauchen Termine auf, die gar keine Teilnehmer (außer mich natürlich selbst) im Termin haben (also einfach Termine die man sich selbst einstellt, ohne weitere Personen einzuladen), dort im Array aber eine Vielzahl von Teilnehmern auftauschen, die  nichts damit zu tun haben und im Termin auch nicht gespeichert sind. Das finde ich noch am merkwürdigsten.

Ich wäre für Denkanstöße dankbar. Anbei der Code:


                     If objAppointmentIntern.Recipients.Count > 0 Then
                        i = objAppointmentIntern.Recipients.Count
                        ReDim Preserve RecipientsZaehler(i) As String
                        For Each ObjRecipient In objAppointmentIntern.Recipients
                            i = i - 1
                            RecipientsZaehler(i) = ObjRecipient.Name
                        Next
                     End If
                     '################## Ausgabe des Arrays mit ausgelesenem Index ##################
                     For l = LBound(RecipientsZaehler) To UBound(RecipientsZaehler)
                        If l < UBound(RecipientsZaehler) Then
                            RecipientsInhalt = RecipientsInhalt & RecipientsZaehler(l) & "/ "
                            Debug.Print "If-Part 1 und l ist gleich: "; l & " und " & RecipientsZaehler(l)
                        Else
                            RecipientsInhalt = RecipientsInhalt & RecipientsZaehler(l)
                            Debug.Print "Else-Part 1 und l ist gleich: "; l & " und " & RecipientsZaehler(l)
                        End If
                     Next
                     
                     '#####################################################################################
                     rst!Teilnehmer = RecipientsInhalt
                     RecipientsInhalt = ""
                     rst!BeginntAm = .Start
                     rst!EndetAm = .End
                     rst!GeaendertAm = .LastModificationTime
                     Set objUserProperty = .UserProperties.Add("TerminID", olText)
                     objUserProperty.Value = rst!TerminID
                     .Save
                     rst.Update