Hier ist eine ähnliche Aufgabe gelöst worden zur farblichen Markierung:
[ offen ] Listview unterstützung
Beiträge von qwert23
-
-
Probiere doch mal im Feld ein MouseClick(....,3).
[autoit]
Auch ausreichend Zeit zwischen den Aktionen ist m.E. erfolgreich.
[/autoit]
MouseClick("left", 555, 125, 3) ; Wir klicken in das Feld, welches wir auslesen
Sleep(40)
Send ("^c")
Sleep (600)
$bak=ClipGet() -
Meine Vermutung ist, dass die Datei noch nicht geschrieben wurde nach dem download. Deshalb empfehle ich mal ein Sleep(5000) auszuprobieren.
InetGet("http://fractal.ohost.de/"&$ini,$rini,1,0) ; Datei herunterladen
Sleep(5000) ; oder auch länger
$fileread = FileOpen(@ScriptDir&'\'&$rini,0) -
...ist es Dein Ziel die Dokumenteneigenschaften einer .docx (Word) Datei auszulesen bzw zu setzen?
Dann empfehle ich Dir das Word-UDF und darin die Funktion _WordDocPropertyGet bzw. _WordDocPropertySet (Auszug aus der Hilfe im Spoiler)
Deine og. Fehlermeldungen würde ich dahingehend interpretieren, dass die DLL keine Worddateien verarbeiten kann.
Spoiler anzeigen
Funktionsreferenz--------------------------------------------------------------------------------
_WordDocPropertyGet
Gibt eine ausgewählte Eigenschaft der Word-Datei zurück.#include <Word.au3>
_WordDocPropertyGet(ByRef $o_object, $v_property)Parameter
$o_object Objektvariable eines Word.Application Dokumentobjekts.
$v_property gewählte Eigenschaft (siehe Bemerkungen)Rückgabewert
Erfolg: Wert der ausgewählten Eigenschaft
Fehler: Gibt 0 zurück und setzt @ERROR
@Error: $_WordStatus_Success = Kein Fehler
$_WordStatus_GeneralError = allgemeiner Fehler
$_WordStatus_ComError = Com Fehler
$_WordStatus_InvalidDataType = ungültiger Datentyp
$_WordStatus_InvalidObjectType = ungültiger Objekttyp
$_WordStatus_InvalidValue = ungültiger Wert
@Extended: Nummer des ungültigen ParametersBemerkungen
Man kann entweder den Index oder Namen für die Auswahl der Eigenschaft verwenden.Die folgenden Tabellen zeigen eine Beschreibung für jede verfügbare Eigenschaft.
Word Dokument Eigenschaften
Index der Eigenschaft/Name Beschreibung
(1) "title" Titel.
(2) "subject" Thema.
(3) "author" Autor.
(4) "keywords" Stichwörter.
(5) "comments" Kommentare.
(6) "template" Name der Vorlage.
(7) "last author" Letzter Autor.
(8 ) "revision number" Anzahl der Überarbeitungen.
(9) "application name" Name der Anwendung.
(10) "last print date" letztes Druckdatum.
(11) "creation date" Erstelldatum.
(12) "last save time" zuletzt gespeichert am.
(13) "total editing time" Anzahl von Änderungen im VBA Pojekt.
(14) "pages" Anzahl Seiten.
(15) "words" Anzahl Wörter.
(16) "characters" Anzahl Zeichen.
(17) "security" Sicherheitseinstellungen.
(18 ) "category" Kategorie.
(19) "" nicht unterstützt.
(20) "manager" Manager.
(21) "company" Firma.
(22) "bytes" Anzahl Bytes.
(23) "lines" Anzahl Zeilen.
(24) "paragraphs" Anzahl Absätze.
(25-28 ) "" nicht unterstützt.
(29) "hyperlink base" Wenn ein relativer Link auf einem festgelegten Pfad basiert (der erste Teil des Pfades der Datei, der den Hyperlink und die Zieldatei enthält), ist der Pfad die Basis des Hyperlinks.
(30) "characters (with spaces)" Anzahl Zeichen inkl. Leerzeichen.Verwandte Funktionen
_WordDocPropertySet
Beispiel; *******************************************************
; Beispiel 1 - Erstellt ein Word-Fenster, öffnet ein Dokument
; und liest alle verfügbaren Dokumenteigenschaften durch den Index.
; *******************************************************
;
#include <Word.au3>Local $oWordApp = _WordCreate(@ScriptDir & "\Test.doc")
Local $oDoc = _WordDocGetCollection($oWordApp, 0)
For $i = 1 To 30
ConsoleWrite("Index der Eigenschaft " & $i & " - " & _WordDocPropertyGet($oDoc, $i) & @CR)
Next; *******************************************************
; Beispiel 2 - Erstellt ein Word-Fenster, öffnet ein Dokument
; und liest den Titel, Betreff und Autor des Dokumentes durch den Namen aus.
; *******************************************************
;
#include <Word.au3>
$oWordApp = _WordCreate(@ScriptDir & "\Test.doc")
$oDoc = _WordDocGetCollection($oWordApp, 0)
ConsoleWrite("Titel - " & _WordDocPropertyGet($oDoc, "Title") & @CRLF)
ConsoleWrite("Betreff - " & _WordDocPropertyGet($oDoc, "Subject") & @CRLF)
ConsoleWrite("Autor - " & _WordDocPropertyGet($oDoc, "Author") & @CRLF) -
Ändere bitte die Zeile 51 in
$oPDF.src = $dir & "\" &$files[$i]
Dann sollte es funktionieren...
Oder den Wert aus Zeile 50 mit GUICTRLRead an $oPDF.src übergeben.
-
oder direkt ersetzen durch StringReplace("Dein String","|","")
Siehe: http://www.autoitscript.com/autoit3/docs/f…ringReplace.htm
-
Es ist zwar möglich die Webseite auf Querformat zu stellen, doch vermutlich nutzt es Dir nichts beim Ausdruck, stimmts?
Aus meiner Sicht liegt die Lösung sich mit der Ansprache des gewählten Druckers zu beschäftigen.
Um dort weiter zu forschen sind mehr Infos zum Drucker nötig.Falls es doch etwas sinhaftes hat die Webseite auf Querformat zu drehen, dann schaue mal hier:
http://msdn.microsoft.com/en-us/library/…4(v=vs.85).aspxHilft Dir das weiter?
-
Du wirst doch die Kontrollkästchen (Z) mit den Entwicklerfunktionen in Excel erstellen, oder?
Dann unter Eigenschaften die verlinkte Zelle bestimmen. Diese kann ja irgendwo sein, auch hinter dem Kontrollkästchen.
Siehe Bild für Formularfelder. ActiveX Elemente funktionieren genau gleich. -
z.Bsp. in der deutschen Hilfe UDFs3.chm
Da kannst Du Dich zu gar an der Aktualität beteiligen! -
Grundsätzlich würde ich dazu das Excel-UDF verwenden.
Verlinke Deine Checkbox Z mit einer Zelle (in Excel). Diese Zelle belegst Du dann einfach mit dem Wert WAHR oder FALSCH. Schon ist das Kontrollkästchen aktiv oder inaktiv gesetzt. Das kannst Du gut in Excel nachvollziehen.
In Deinem Autoit-Script verwendest Du dann die Funktion _ExcelWriteCell(....) um den Wert WAHR oder FALSCH in die verlinke Zelle zu setzen. Autoit bietet hierzu gute Hilfedateien / Beispiel an. Dann hast Du auf einfachstem Wege Deine Lösung.
Die If-Abfrage zur Variablen X mit Wert Y bekommst Du selber hin?
-
und mit dem OutlookEX UDF hängst Du das pdf an die E-Mail
-
Ohne Test zum Ablauf:
Mit _OL_ItemFind die gewünschte E-Mail identifizieren,
_OL_ItemModify(....,"UnRead=False" oder "[UnRead]=False") setzen und dann ggf. noch mit _OL_ItemSave abschließend sichern.(http://msdn.microsoft.com/de-de/library/office/ff868861.aspx)
-
so ungefähr.
Du mußt den Aufruf beachten, wie $oExcel = .....
Eigentlich ist das meist einfach umzusetzen aus den Beispielen...
schaue auch in die Excel.au3, da findest Du auch viele viele Einzelbefehle. -
zur Überleitung des Beispiels:
[autoit]
[/autoit][autoit][/autoit][autoit]
#include <Excel.au3>Local $oExcel = _ExcelBookNew() ;Create new book, make it visible
[/autoit]
.....
$oExcel.Range("A1:C3").Select ; zum markieren von Bereichen
$oExcel.Range("B5").Activate ; aktiviere Zelle -
Meinst Du so, als Parameter zur Combobox?
GUICtrlCreateCombo("", 232, 64, 145, 25, BitOR($CBS_DROPDOWNLIST,$CBS_AUTOHSCROLL))
Beschreibe bitte ein Beispiel zu Deiner Frage.
-
-
Dein Aufruf ist nicht ganz korrekt. Probiere es mal hiermit:
[autoit]
[/autoit][autoit][/autoit][autoit]
#include <excel.au3>$oExcel = _ExcelBookOpen("C:\Kundenimport Vorlage.xls")
[/autoit][autoit][/autoit][autoit]
$Customer = _ExcelReadCell($oExcel,"B1")Msgbox(....)
[/autoit] -
schau mal bitte hier:
http://www.autoitscript.com/forum/topic/143294-excelex/Dort sind Beispiele zum Formatieren von Excelzellen angegeben, wie auch in der ExcelEX zum downloaden.
-
Hallo derBrot,
ich verwende dazu stets den Unterordner "Senden an...". Dieser ist fast durchgängig in allen PopupMenüs vorhanden. Hier brauchst Du kein Registry Einträge. Deshalb ist einfügen und entfernen, ändern ziemlich einfach.
[autoit]
Du erstellst einen Eintrag mit FileCreateShortcut...
[/autoit]
FileCreateShortcut ( @ScriptDir&"\Test.exe",@AppDataDir&"\Microsoft\Windows\SendTo\Testaufruf.lnk",@scriptdir)Dein Test.exe nimmt dann die Quelle auf:
Spoiler anzeigen
[autoit]
[/autoit]
#include <File.au3>
If $CmdLineRaw Then
......
$cmdline[1] ; beinhaltet Dein Programmname, Datei etc. zur weiteren Verwendung
EndIf -
Sehr gern!