Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1832to1836
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

vba mit Outlook

vba mit Outlook
20.05.2021 15:36:21
Timm
Hallo Chris,
hallo zusammen,
leider konnte ich den nachfolgenden Inhalt nicht zu dem vorhandenen Thread hinzufügen. Deshalb habe ich einen neuen Eröffnet :-).
Zunächst einmal möchte ich mich für die Hilfestellung von Chris und Oberschlumpf bedanken. Hab wieder einiges gelernt.
Habe mein Konzept nochmals überarbeitet und mich von den Checkboxen verabschiedet. So konnte ich mich auch vor dem Klassenmodul drücken :-). Werde mir diese Thematik jedoch in einer ruhigen Minute mal zu Gemüte führen.
Die Funktion Intersect habe ich noch nicht ganz verstanden. Sie liefert ja ein Schnittmenge z.B.
Intersect(A1:A3;A3:A6)...würde als Ergebnis A3 liefern als ein Range, soweit habe ich es verstanden.
Wie verhält es sich hier:
Private Sub Worksheet_Change(ByVal Target as Range)
Set Target = Intersect(Target, Range("A1:A3"))
Ist Target dann nothing, wenn ich z.B. A1="" eintrage? Target kann also nur not nothing oder nothing sein richtig?
Habe noch eine kurze weitere Frage, wenn ich Outlook aus Excel heraus anspreche und es in Outlook nur ein Konto gibt muss ich dann trotzdem
With myMsg
.SendUsingAccount = .Session.Accounts.Item("test1@gmx.de")
End With
verwenden oder lasse ich die Zeile dann einfach weg?
Gruß
Timm

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: vba mit Outlook
20.05.2021 16:39:05
ChrisL
Hi Timm
Den alten Beitrag habe ich nicht mehr gesehen, da er ins Archiv gerutscht ist.
https://www.herber.de/forum/cgi-bin/callthread.pl?index=1830951
Was du in A1 einträgst, ist irrelevant. Entscheidend ist ob du eine Änderung vornimmst (Change = Auslöser vom Event).
Target ist die veränderte Zelle/Zellen (z.B. mit Copy/Paste können auch mehrere Zellen gleichzeitig verändert werden). Das Target ist somit zwar auch eine Range-/Bereichs-Variable, aber diese würde ich nicht verändern (Set Target). Wenn du mit einer zusätzlichen Variable arbeiten möchtest, dann nimm eine neue (im Beispiel Set rng).

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
Set rng = Intersect(Target, Range("A1:A3"))
If rng Is Nothing Then
MsgBox "Keine Überschneidung, die Variable ist Nothing/Nichts."
Else
MsgBox "Die Variable ist nicht Nothing/Nichts. Die neue Variable enthält Bereich: " & rng.Address
End If
End Sub
Die neue Range Variable enthält entweder einen Bereich oder ist Nothing. Insofern stimmt die Aussage, entweder Nothing oder Not Nothing. Meist reicht diese Information (sein oder nicht sein), um das Event auszulösen und die Adresse vom überschneidenden Bereich interessiert nicht. Darum mein ursprünglicher Vorschlag:
If Not Intersect(Target, Bereich) Is Nothing Then
Und zu Outlook. Teste doch einfach mal kurz. Ich denke es ist nicht nötig.
cu
Chris
Anzeige
AW: vba mit Outlook
20.05.2021 17:40:20
Timm
Hallo Chris, vielen Dank für deine ausführliche Antwort. Über den Punkt das mehrere Zelle auf einmal ausgewählt werden können habe ich noch nicht nachgedacht. Danke für Hinweis.
Hast du auch noch eine Antwort für meine zweite Frage :-)?
Wenn ich nur ein Outlook Konto eingebunden habe, wie spreche ich dieses dann an?
With myMsg
.SendUsingAccount = .Session.Accounts.Item("test1@gmx.de")ist die Programmzeile dann überflüssig?
End With
Gruß Timm
AW: vba mit Outlook
20.05.2021 17:42:15
Timm
Hallo Chris, vielen Dank für deine ausführliche Antwort. Über den Punkt das mehrere Zelle auf einmal ausgewählt werden können habe ich noch nicht nachgedacht. Danke für Hinweis.
Hast du auch noch eine Antwort für meine zweite Frage :-)?
Wenn ich nur ein Outlook Konto eingebunden habe, wie spreche ich dieses dann an?
With myMsg
.SendUsingAccount = .Session.Accounts.Item("test1@gmx.de")ist die Programmzeile dann überflüssig?
End With
Gruß Timm
Anzeige
AW: vba mit Outlook
20.05.2021 19:21:06
Yal
Hallo Timm,
ja, wenn Du schon an Outlook abgebunden bist (das Objekt "Session" ist bereits initialisiert), dann gibt es schon einen Default-Account dahinter.
Es umzustellen, brauchst Du nur, wenn innerhalb Outlook mehrere Accounts vorhanden wäre und Du nicht den Default verwenden möchtest.
VG
Yal
AW: vba mit Outlook
20.05.2021 19:33:17
Timm
Vielen Dank Yal.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige