es geht um folgendes Teil in einem größerem Makro.
Dieses Teilmakro soll in einer Writer-Dokument-Vorlage in einer Tabelle, nach Einfügen einer Adresse, unter bestimmten Bedingungen, den Inhalt einer Zelle löschen, bzw. in einer anderen Tabelle ein Flag setzen.
Code: Alles auswählen
rem --- gegebenenfalls Inhalt Tabelle "eMail" löschen --- geändert 25.05.10
sub clearTab
oDoc = ThisComponent
Title = oDoc.DocumentInfo.Title
if mid(Title,1,3) = "Fax" or mid(title,1,5) = "Notiz" or mid(title,1,9) ="Bewerbung" then exit sub
ausl = oDoc.getTextTables().getByName("eMail").getCellByPosition(0,0).string
ausl = ausl+"xxxx"
ausT = left(ausl,3) 'ergibt entweder "- p" oder "Ein" oder "xxx"
wait 200
if ausT = "- p" then oDoc.getTextTables().getByName("Tabelle2").getCellByPosition(1,2).setString("x") 'Unterschrift-Flag
wait 100
if ausT <> "- p" then oDoc.getTextTables().getByName("eMail").getCellByPosition(1,0).setString("") 'mail-adresse löschen
end sub
Ohne die beiden >wait< wird mal gelöscht, mal nicht (bei gleicher Vorlage, und sonst gleichen Bedingungen)
Ich nutze OO 3.2.0 unter winXP prof --- auf einem Alt-Rechner mit 1GHz Taktfrequenz.
Hat jemand eine Idee, wie ich das besser schreiben kann, daß es auch ohne >wait< funktioniert?
gruß
sven-my