AppleScript per salvare il documento Microsoft Word attivo IFF ce n'è uno

0

Uso questo con Keyboard Maestro per salvare automaticamente il documento più in primo piano in Microsoft Word ogni volta che Word si disattiva:

tell application "Microsoft Word"
    if it is running then
        save active document
    end if
end tell

Funziona alla grande a meno che non ci sia un documento attivo, nel qual caso genera un errore.

So che potrei ignorare l'errore, ma preferirei non farlo.

Vorrei sapere se esiste un modo AppleScript appropriato per dire qualcosa come "Se il documento attivo esiste, quindi salvarlo."

Ho provato su Google, ma ho trovato solo questo (quello che ho ora).

    
posta TJ Luoma 28.05.2014 - 15:34
fonte

1 risposta

1

Devi interrogare Word per il conteggio degli oggetti document - active document è solo una comoda scorciatoia per il primo in quella lista. Sfortunatamente, l'implementazione AppleScript in qualche modo particolare di Word non restituisce un oggetto elenco vuoto quando non ci sono documenti aperti, ma missing value (il take di AppleScript su nil ). Tenendo conto di ciò, la seguente funzione esegue una query su Word per i documenti aperti:

on hasDocument()
  tell application "Microsoft Word"
    every document is not missing value
  end tell
end

- metti quello davanti al tuo script e modifica il tuo condizionale a if it is running and my hasDocument() e dovresti stare bene.

    
risposta data 28.05.2014 - 16:00
fonte

Leggi altre domande sui tag