Posso usare Javascript per scrivere una funzione personalizzata per Numbers?


8

Mi ha sempre infastidito il fatto di non poter scrivere una funzione personalizzata per Numbers. Renderebbe il foglio di calcolo molto più utile per me. Nei fogli di calcolo di Google Apps puoi farlo utilizzando Javascript.

In altre parole, scrivi

function myCustomStuff(a, b) { ... }

e una cella può contenere:

=myCustomStuff(A1, B2)

Ora, in Yosemite, hanno l'automazione Javascript. Mi chiedo se sia possibile.

Risposte:


2

No: l'iniezione di una funzione sembra essere qualcosa che non è facilmente gestibile tramite script.

Una semplice macro potrebbe essere fattibile e potresti iniziare con questi due riferimenti:

Questo link è la documentazione per gli sviluppatori su come connettere lo script all'app Numbers.

Questo sito di automazione è stato per molto tempo il posto migliore che abbia mai conosciuto per apprendere e implementare gli strumenti AppleScript.

Se sei nuovo, potresti seguire il tutorial sui numeri in AppleScript per assicurarti di avere un'attività praticabile e quindi ricodificarlo nella nuova lingua. Quindi dovrai determinare i ganci in Numbers e vedere se l'attività specifica è fattibile senza utilizzare il bridge Objective-C che consente l'integrazione di livello inferiore con le app su OS X.


Ho esaminato la libreria di script Numbers e non vedo alcun modo per registrare una funzione con nome da utilizzare nelle equazioni. È possibile eseguire un calcolo su un gruppo di celle e popolare altre celle. Questo mi aiuta, ma non è proprio quello che stavo cercando.
Rob N

@RobN Invertirò il mio sì - non ho visto alcun modo per incorporare una funzione e speravo fosse possibile, ma sembra che tu debba fare qualcosa di molto pesante come programmare un'estensione di sistema / scorrendo i metodi in Numbers per iniettare una funzione.
bmike

Freddo. Ho accettato la tua risposta e ho presentato una richiesta di funzionalità ad Apple. Forse un giorno.
Rob N
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.