water, kannst Du mir nochmal mit den Berechtigungen helfen?
Spoiler anzeigen
"Global $aFolder = _OL_FolderAccess($oOutlook, "Test@Outlook.de\\Kalender")
Kann ich die Berechtigung (Kalender) für den anderen User in den Pfad mit einbinden?
water, kannst Du mir nochmal mit den Berechtigungen helfen?
"Global $aFolder = _OL_FolderAccess($oOutlook, "Test@Outlook.de\\Kalender")
Kann ich die Berechtigung (Kalender) für den anderen User in den Pfad mit einbinden?
ZitatDu über _OL_FolderAccess auf die Kalender zugreifen
water, danke, natürlich! ![]()
Mache ich ja für die anderen, die speziell den Termin sehen sollen, mit der Schleife "$OutlookKalender & $aAnwender[$i]" auch.
Manchmal, wie war das mit dem Bäumen und der Axt........![]()
ZitatVerwendet Ihr Exchange als Mailserver? Falls ja, könnte man das auch über einen Gruppenkalender regeln. Du importierst die Termine in den Gruppenkalender und alle mit Zugriff auf diesen Gruppenkalender sehen ihn sofort.
Nein, er muss in den persönlichen Kalender des Users.
water , vielen Dank!
Klappt auch bei mir prima. ![]()
Habe noch eine Frage.![]()
Ich importiere mit Deinen Funktionen, Termine in den Outlook Kalender, was auch super funktioniert.
Local $aFolder = _OL_FolderAccess($oOL, $OutlookKalender & $aAnwender[$i], $olFolderCalendar)
If @error Then
MsgBox($MB_ICONERROR, "Error", "_OL_FolderAccess returned @error = " & @error & ", @extended = " & @extended, 0, $tsn_ST_Main)
Return
EndIf
Local $aResult = _OLT_iCal_VEvent_Import($oOL, $aFolder[1], $siCalPath, "_iCal_Callback", BitOR($iOLT_DebugConsole, $iOLT_DebugProperties))
Die Anwendung zur Erstellung läuft über ein gemeinsames Netzlaufwerk für mehrere Benutzer zugänglich.
Ist es möglich, einen mit Deinern Funktionen importierten Termin, auch in den OutlookKalender der anderen Benutzer zu importieren?
Leider ist der Name der Variable $OutlookKalender überall identisch. = \\Outlook-Datendatei\Kalender
Die geöffnete Mail wird natürlich beschrieben und soll dann mit Betätigen des Senden Buttons in Outlook als *.msg gespeichert werden.
Also als Senden Event.
Ich denke, dass es so zu verstehen ist und Du es auch am obigen Script sehen könntest.![]()
Möchte die Email vom anderen ("$Ir_Konto" , Mail im Postausgang) nach dem Senden speichern.
Local $Ir_Konto ="Email@..."
Local $Betreff = "Morgen"
Local $sAdresse = "Hallo@...."
Local $sNachrText = Sehr...."
Local $sBody = "Wetter ist..."
Local $SaveAsMail = "D:\"
Global $oOutlook = _OL_Open()
_OL_MailSignatureSet("entsel-2", "")
$oItem = _OL_ItemCreate($oOutlook, $olMailItem, "", "", "Subject=" & $Betreff)
Local $aRecipients ;empfänger_1
If $sAdresse <> "" Then
$aRecipients = StringSplit($sAdresse, ";", 2)
_OL_ItemRecipientAdd($oOutlook, $oItem, Default, $olTo, $aRecipients)
EndIf
For $oAccount In $oOutlook.Session.Accounts
If $oAccount.SMTPAddress = $Ir_Konto Then
$oItem.SendUsingAccount = $oAccount
ExitLoop
EndIf
Next
$oItem.BodyFormat = $olFormatHTML
$oItem.GetInspector
$sBody = $oItem.HTMLBody
$oItem.HTMLBody = $sNachrText & $sBody
_OL_MailSignatureSet("entsel-1", "entsel-1")
$oItem.Display
SendMailEvent()
Func SendMailEvent()
Global $oOApp = ObjCreate("Outlook.Application")
Global $oItems = $oOApp.GetNamespace("MAPI").GetDefaultFolder($olFolderSentMail).Items
ObjEvent($oItems, "oItems_")
EndFunc ;==>SendMailEvent
Func oItems_ItemAdd($oOL_Item)
_OL_ItemSave($oOApp, $oOL_Item, Default, $SaveAsMail, $olMSGUnicode, 1 + 16)
EndFunc
Das Beispiel wäre für das Default Konto. Es soll jetzt "SendMailEvent" mit dem "$Ir_Konto" funktionieren.
#include <OutlookEX.au3>
HotKeySet("+!e", "_Exit") ;Shift-Alt-E to Exit the script
MsgBox(64, "OutlookEX UDF Example Script", "Hotkey to exit the script: 'Shift-Alt-E'!")
Global $oOApp = ObjCreate("Outlook.Application")
Global $oItems = $oOApp.GetNamespace("MAPI").GetDefaultFolder($olFolderSentMail).Items
ObjEvent($oItems, "oItems_")
While 1
Sleep(10)
WEnd
; Outlook 2007 - ItemAdd event - http://msdn.microsoft.com/en-us/library/…fice.12%29.aspx
Func oItems_ItemAdd($oOL_Item)
MsgBox(64, "OutlookEX UDF Example Script", "Mail has been sent!" & @CRLF & @CRLF & _
"Subject: " & $oOL_Item.Subject)
EndFunc ;==>oOFolder_ItemAdd
Func _Exit()
Exit
EndFunc ;==>_Exit
Moin,
die Anwendung funktioniert mit meinem Default Konto sehr gut.
water, ich möchte den GetDefaultFolder auf ein anderes Konto mit Postausgang ändern.
Habe es mit dem Pfad "*\Konto\Postausgang" versucht, komme aber nicht zum Ergebnis.
Kannst Du mir helfen?
Gruß
water, vielen Dank. Das war es! ![]()
Moin,
water, ich möchte die Einträge im Kalender ändern.
Mit der Version wie im "Spoiler", wird alles super geändert, nur nicht der Beginnt - und Endet Termin.
$Date & $TimeAn = "20200708200000" oder "20200708T200000Z"
$Date & $TimeEn = "20200708220000" oder "20200708T220000Z"
Wie muss die Zeit aussehen, oder was ist falsch?
Kannst Du mir nochmals helfen?
Gruß
Local $oOL = _OL_Open()
If @error Then
MsgBox($MB_ICONERROR, "Error", "_OL_Open returned @error = " & @error & ", @extended = " & @extended)
EndIf
Local $aOL_Item = _OL_ItemFind($oOL, "*", $olAppointment, "", "Subject", $Betreff_GK, "EntryID,Subject,Location,Body,Start,End", "", 1)
_ArrayDisplay($aOL_Item, "_OL_ItemFind")
Local $aOL_Properties[5] = ["Subject=" & $Betreff_GK, "Location=" & $Location, "Body=" & $Body, "Start=" & $Date & $TimeAn, "End=" & $Date & $TimeEn]
_Arraydisplay($aOL_Properties)
For $i = 1 To $aOL_Item[0][0]
_OL_ItemModify($oOL, $aOL_Item[$i][0], Default, $aOL_Properties)
If @error <> 0 Then
MsgBox(0 + 262144 + $MB_SETFOREGROUND + 64, "", "Termin nicht geändert.")
EndIf
Next
MsgBox(0 + 262144 + $MB_SETFOREGROUND + 64, "", "Termin geändert.")
_OL_Close($oOL)
Steht im Spoiler.
Moin,
water, ich möchte alle Einträge im Kalender, Unterkalender (Jahr) mit dem Betreff: Jahr-2020 finden.
Kannst Du mir helfen?
#include <OutlookEX.au3>
#include <array.au3>
Global $oOL = _OL_Open()
If @error Then
MsgBox($MB_ICONERROR, "Error", "_OL_Open returned @error = " & @error & ", @extended = " & @extended)
EndIf
Global $aFolder = _OL_FolderAccess($oOL, "\Jahr", $olFolderCalendar)
_ArrayDisplay($aFolder)
$aItems = _OL_ItemFind($oOL, $aFolder[5], $olFolderCalendar, "SUMMARY", "Jahr-2020", "", "", 1)
If @error = 0 Then
_ArrayDisplay($aItems, "OutlookEX UDF: _OL_ItemFind Example Script - Find appointments by partial search")
Else
MsgBox(48, "OutlookEX UDF: _OL_ItemFind Example Script", "Error finding an appointment. @error = " & @error & ", @extended: " & @extended)
EndIf
Gruß
BugFix , ich habe leider nur ein schwarzes Bild.
Getestet mit meinem Notebook. Eingebaute Kamera (BisonCam, NB Pro).
Hast Du eine Idee?
Ich möchte im Anschluss die Exceldatei mit "ShellExecuteWait" öffnen.
Nur funktioniert im Anschluß "ShellExecuteWait" nicht mehr.
Sorry, klappt jetzt!
Bitnugger, vielen Dank für Deine umfassende Mühe.
Klappt hervorragend! ![]()
Bitnugger, danke!
Wichtig ist......
Es soll anschließend bei gesperrtem Arbeitsblatt möglich sein, mit einem Touchdisplay zu zeichnen.
Müsste mit "UserInterfaceOnly:=True, Contents:=True, DrawingObjects:=False" irgendwie erweitert werden.
So wie oben im VBA-Macro.
Moin,
Ich möchte diese Makro von Autoit aus ausführen.
Sub BlattSchuetzenEin()
Dim I
For I = Worksheets(1).Index To Worksheets.Count
With Worksheets(I)
.Protect UserInterfaceOnly:=True, Contents:=True, DrawingObjects:=False, _
Password:="Passwort"
.EnableOutlining = True
End With
Next
End Sub
Bis hier ist alles klar. Das Excelblatt wird geöffnet und kann bearbeitet werden. danach soll das obige Makro gestartet werden.
Local $bVisible = True
Local $bReadOnly = False
Local $sWritePassword_Ab = "passwort"
Local $oExcelAT = _Excel_Open(False)
Local $BoExcelAT = _Excel_BookOpen($oExcelAT, $TV_Speichern_Path_, $bReadOnly, $bVisible)
If @error > 0 Then
MsgBox(0 + 262144 + $MB_SETFOREGROUND + 64, "", "Konnte nicht geöffnet werden")
Return
EndIf
$oExcelAT.Activesheet.Unprotect($sWritePassword_Ab)
Alles anzeigen
Habe es so versucht, klappt aber leider nicht.
With $BoExcelAT.ActiveSheet
.DrawingObjects = False
.Contents = True
.Scenarios = True
.UnProtect("Passwort")
EndWith
Könnt ihr mir helfen?
Gruß
Danke!
Durch einen Eintrag für z.B. Office 2013 in der Regristry, ist das Problem behoben.
RegWrite("HKEY_CURRENT_USER64\Software\Microsoft\Office\15.0\Outlook\Preferences", "DisableTNEF", "REG_DWORD", 1)
Moin,
water, ich erzeuge mit Deiner UDF eine Mail mit , Adresse, Anhang (PDF), Text in HTML und Signatur, was auch gut klappt.
Leider wird der Anhang (PDF) dann in einigen Mailprogrammen als "winmail.dat" ohne PDF gesendet.
Wenn ich lokal die Mail erzeuge und versende, wird der Anhang richtig dargestellt.
Kannst Du mir helfen?
Gruß