Beiträge von water
-
-
Ich denke, mit den bereits gelieferten Beispielen solltest Du das selber hinbekommen
Hier der Link zu MSDN wo Du Dir nur mehr das korrekte Attribut für "Position" raussuchen musst. -
Ich denke, Du musst mit Funktion _OL_ItemModify das Attribut "MiddleName" entweder auf "" oder den neuen Wert setzen.
-
Wenn Du auf "Name ..." klickst, in welchem Feld steht dann ""?
-
Du hast wieder das selbe Problem wie beim ersten Versuch.
[autoit]
Du musst _ExcelBookOpen den zu öffnenden Dateinamen angeben. Zurück bekommst Du dann ein Object das Du bei allen anderen Befehlen angeben musst.$oExcelObject = _ExcelBookOpen($oXls)
[/autoit]
_ExcelWriteArray($oExcelObject, $iStartRow, $iStartColumn, $aData, 0, 1) -
Na dann rat mal, wie der Teil "FileAs=" & $aItem[1][1] & ", " & $aItem[2][1]" richtig lauten sollte
-
Wirf "FirstName=" & $aItem[2][1], "LastName=" & $aItem[1][1]," aus der _OL_ItemModify Zeile raus.
-
Du musst noch die Property "FileAs" setzen. Das Skript sieht dann so aus:
[autoit]#include <OutlookEX.au3>
[/autoit][autoit][/autoit][autoit]Global $oOL = _OL_Open()
[/autoit]
If @error Then Exit MsgBox(16, "Error", "Error opening connection to Outlook. @error = " & @error & ", @extended = " & @extended)
MsgBox(16, "Kontakte ändern", "Bitte die zu ändernden Kontakte auswählen!")
Global $aSelected = _OL_FolderSelectionGet($oOL)
If @error Then Exit MsgBox(16, "Error", "Error returned by _OL_ItemSelectionGet. @error = " & @error & ", @extended = " & @extended)
For $i = 1 to $aSelected[0][0]
$aItem = _OL_ItemGet($oOL, $aSelected[$i][0], Default, "FirstName,LastName")
_ArrayDisplay($aItem)
If @error Then Exit MsgBox(16, "Error", "Error returned by _OL_ItemGet. @error = " & @error & ", @extended = " & @extended)
_OL_ItemModify($oOL, $aSelected[$i][0], Default, "FirstName=" & $aItem[2][1], "LastName=" & $aItem[1][1],"FileAs=" & $aItem[1][1] & ", " & $aItem[2][1])
If @error Then Exit MsgBox(16, "Error", "Error returned by _OL_ItemModify. @error = " & @error & ", @extended = " & @extended)
Next
_OL_Close($oOL)
Teste aber vorher sicherheitshalber an einem Test-Kontakt. -
-
So ist es jetzt aber richtig:
[autoit]#include <OutlookEX.au3>
[/autoit][autoit][/autoit][autoit]Global $oOL = _OL_Open()
[/autoit]
If @error Then Exit MsgBox(16, "Error", "Error opening connection to Outlook. @error = " & @error & ", @extended = " & @extended)
MsgBox(16, "Kontakte ändern", "Bitte die zu ändernden Kontakte auswählen!")
Global $aSelected = _OL_FolderSelectionGet($oOL)
If @error Then Exit MsgBox(16, "Error", "Error returned by _OL_ItemSelectionGet. @error = " & @error & ", @extended = " & @extended)
For $i = 1 to $aSelected[0][0]
$aItem = _OL_ItemGet($oOL, $aSelected[$i][0], Default, "FirstName,LastName")
_ArrayDisplay($aItem)
If @error Then Exit MsgBox(16, "Error", "Error returned by _OL_ItemGet. @error = " & @error & ", @extended = " & @extended)
_OL_ItemModify($oOL, $aSelected[$i][0], Default, "FirstName=" & $aItem[2][1], "LastName=" & $aItem[1][1])
If @error Then Exit MsgBox(16, "Error", "Error returned by _OL_ItemModify. @error = " & @error & ", @extended = " & @extended)
Next
_OL_Close($oOL) -
Dann muss ich das am Windows-System selbst mal testen. Ubuntu eignet sich nicht so ganz dafür
-
Wieviele Kontakte hast Du selektiert?
-
Sorry, heisst natürlich _OL_FolderSelectionGet.
-
Derzeit nimmt das Skript alle markierten Kontakte und tauscht Vorname/Nachname.
[autoit]
Du kannst aber am Anfang eineMsgBox(64, "Kontakte markieren", "Bitte die zu konvertierenden Kontakte markieren")
[/autoit]einbauen.
-
Noch ungetestet - daher vorsichtig an Testdaten prüfen.
[autoit]
Verarbeitet alle markierten Outlook Elemente und tauscht Vorname und Nachname aus.#include <OutlookEX.au3>
[/autoit][autoit][/autoit][autoit]Global $oOL = _OL_Open()
[/autoit]
If @error Then Exit MsgBox(16, "Error", "Error opening connection to Outlook. @error = " & @error & ", @extended = " & @extended)
Global $aSelected = _OL_ItemSelectionGet($oOL)
If @error Then Exit MsgBox(16, "Error", "Error returned by _OL_ItemSelectionGet. @error = " & @error & ", @extended = " & @extended)
For $i = 1 to $aSelected[0][0]
$aItem = _OL_ItemGet($oOL, $aSelected[$i][0], Default, "FirstName,LastName")
If @error Then Exit MsgBox(16, "Error", "Error returned by _OL_ItemGet. @error = " & @error & ", @extended = " & @extended)
_OL_ItemModify($oOL, $aSelected[$i][0], Default, "FirstName=" & $aItem[1], "LastName=" & $aItem[0])
If @error Then Exit MsgBox(16, "Error", "Error returned by _OL_ItemModify. @error = " & @error & ", @extended = " & @extended)
Next
_OL_Close($oOL) -
Aber klar doch! Mit meinem OutlookEX UDF kannst Du mit der Funktion _OL_ItemGet Properties auslesen und mit _OL_ItemModify ändern.
-
Das Beispiel auf das Du verlinkst verwendet aber den WinNT Provider, während Du den WMI Provider ansprichst, der scheinbar nicht erlaubt die Priorität zu ändern.
-
-
Das sieht nach WMI Objekten aus. Dieses Beispiel verwendet Put ind SetInfo so wie ich es vorgeschlagen habe.
[autoit]
Den COM Error Handler findest Du beim Befehl ObEvent.Local $oErrorHandler = ObjEvent("AutoIt.Error", "_ErrFunc")
[/autoit]
; Dein Code kommt hierhin
; User's COM error function. Will be called if COM error
occurs
Func _ErrFunc($oError)
; Do anything here.
ConsoleWrite("err.number is: "
& @TAB & $oError.number & @CRLF & _
"err.windescription:" & @TAB & $oError.windescription & @CRLF & _
"err.description is: " & @TAB & $oError.description & @CRLF & _
"err.source is: " & @TAB & $oError.source & @CRLF & _
"err.helpfile is: " & @TAB & $oError.helpfile & @CRLF & _
"err.helpcontext is: " & @TAB & $oError.helpcontext & @CRLF & _
"err.lastdllerror is: " & @TAB & $oError.lastdllerror & @CRLF & _
"err.scriptline is: " & @TAB & $oError.scriptline & @CRLF & _
"err.retcode is: " & @TAB & $oError.retcode & @CRLF & @CRLF)
EndFunc ;==>_ErrFunc -
objPrintJob.Put("Priority", 2)
objPrintJob.SetInfoWenn's dann immer noch klemmt, dann brauchst Du einen COM error handler um die Details des Problemes abzufragen.