Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Entwickler>Von Numbers zu einem Eintrag im Mac Kalender springen?

Von Numbers zu einem Eintrag im Mac Kalender springen?

Morgenstille16.04.2312:36
Hallo,

ich möchte eine Tabelle erstellen, in dem in einer Spalte ein Datum Stehgen wird.

Mein Wunsch wäre, das ich mit Klick auf dieses Datum zu dem Datum im Mac Kalender springen kann.

Ist so etwas möglich?

Ich nutze Ventura auf iMac M1 und Mac Mini M2.

Ich bin in Bezug auf Number Anfänger, kenne mich ein wenig mehr mit Excel aus, falls es da möglich sein sollte.

Danke für jede Hilfe.

Gruß
„Vielen Dank.“
0

Kommentare

ThorsProvoni
ThorsProvoni16.04.2313:31
Ich glaube, das geht in Numbers einfach nicht.

In Excel könntest Du zu einem Feld einen Hyperlink mit der Adresse "ical://" erstellen, damit wird der Kalender geöffnet. Aber ich habe keine Ahnung, wie man da ein bestimmtes Datum mitgibt.
0
marm16.04.2313:34
Das hängt ganz davon ab, ob es Dir den Aufwand wert ist:
1. Link mit Hookmark zum Kalendereintrag erstellen
2. Datum in Numbers eingeben.
3. Datum als Text auswählen und ⌘K für Link-Erstellung
4. Hookmark-Link hinterlegen.

Alternativ zu Schritt 1:
Link zum Kalendereintrag mit BusyCal erstellen

Wenn Du den Hookmark-Link direkt in die Zelle kopierst, wird der Titel vom Termin angezeigt.
+3
Morgenstille16.04.2314:39
Zunächst vielen Dank, werde mir das in Ruhe anschauen.

BTW:
Gibt es eigentlich einen Access Viewer der gut ist und/oder mit dem man möglicherweise vorhandene Access Daten nicht nur anschauen, sondern auch bearbeiten kann?
„Vielen Dank.“
0
Weia
Weia16.04.2314:53
marm
1. Link mit Hookmark zum Kalendereintrag erstellen
Du kennst ja geniale Apps!
„🦖The dinosaurs invented Jesus to test our confidence in science“
+1
marm16.04.2315:24
Weia
marm
1. Link mit Hookmark zum Kalendereintrag erstellen
Du kennst ja geniale Apps!
Meine Apps müssen Hookmark-kompatibel sein Hier noch ein Hook-CLI für Terminalfreunde
+1
Nebula
Nebula17.04.2318:55
Hook-URLs lassen sich leider nicht gut in Numbers generieren. Soll die Ansicht einfach nur zu einem Datum springen, geht das mit einem kleinen AppleScript-Applet. Ich habe mal ein Beispiel erstellt, das du laden kannst. Es ist nicht signiert, weshalb du es am besten zu Beginn auf den ScriptEditor ziehst und neu speicherst, damit der es für dich signiert. Alternativ kannst du es per Doppeklick starten (macOS verweigert den Start) und dann in den Systemeinstellung unter "Sicherheit" auf "Dennoch öffnen" klicken. Ich empfehle den Skripteditor, weil du dann auch prüfen kannst, dass das Skript keinen Murks macht.

https://anonfiles.com/6fjfU7l6za/GoCal_Helper_zip

Du startest es aus Numbers via: gocal://2020/12/21/week

Du kannst "week" durch "month" oder "day" ersetzen, falls du eine andere Ansicht wünschst.

Das Skript ist recht primitiv, es zerpflückt lediglich die URL und wechselt in Numbers die Ansicht. Dass es auf "gocal://"-URLs reagiert, regelt der Eintrag "CFBundleURLTypes" in der Info.plist im Bundle.

Bei Formeln musst du die HYPERLINK-Funktion verwenden, damit sie anklickbar sind:
HYPERLINK("gocal://2020/12/21"; "Linktext")

Falls der Link nicht mehr geht, hier noch das Skript:
use AppleScript version "2.4" -- Yosemite (10.10) or later
use scripting additions

on open location theURL
    if user locale of (system info) does not start with "de" then display alert "Das Skript funktioniert in der Form nur mit deutschen Systemen." buttons {"Abbrechen"} cancel button 1
    set urlComponents to stringSplit(theURL, "/")
    set theScheme to item 1 of urlComponents
    set theYear to item 3 of urlComponents
    set theMonth to item 4 of urlComponents
    set theDay to item 5 of urlComponents
    try
        set theView to item 6 of urlComponents
    on error
        set theView to "day"
    end try
    tell application "Calendar"
        if theView is in {"dayview", "day", "d"} then switch view to day view
        if theView is in {"monthview", "month", "m"} then switch view to month view
        if theView is in {"weekview", "week", "w"} then switch view to week view
        view calendar at date (theDay & "/" & theMonth & "/" & theYear)
    end tell
end open location

on run
    if name of current application is "Script Debugger" or name of current application is "Script Editor" then
        open location "gocal://2020/12/21/w"
    else
        display alert "GoCal Helper" message "Mit einem Aufruf wie „gocal://2022/12/24/day“ springst du in der Kalender-App zu einem bestimmten Datum. Optional kannst du hinter dem Tag noch die Art der Ansicht (day, week, month) angeben."
    end if
end run

on stringSplit(subjectStr, splitStr)
    if subjectStr does not contain splitStr then return subjectStr
    set orgDelims to text item delimiters of AppleScript
    set text item delimiters of AppleScript to splitStr
    set subjectStr to text items of subjectStr
    set text item delimiters of AppleScript to orgDelims
    return subjectStr
end stringSplit
„»Wir werden alle sterben« – Albert Einstein“
+1
marm17.04.2319:52
Nebula
Hook-URLs lassen sich leider nicht gut in Numbers generieren.
Wie meinst Du das? Den Hook-Link generierst Du doch vom Kalender und in Numbers lässt sich der Link hinterlegen.
Interessantes Skript; das passe ich für meine Zwecke an 👍

Es gibt noch eine weitere Möglichkeit. Der Kurzbefehl "Bubble Gum" verlinkt Orte, Things/Omnifocus und sogar Apple Notizen usw. und auch Kalenderereignisse. Wählt man "Kalender" wird anhand eines Suchbegriffs der Termin in den nächsten drei Monaten gesucht. Darauf wird ein Link nach dem unten stehenden Beispiel erstellt (Termin "Test" am 20.4.2023 9:00, "Bubble Gum" habe ich durch "cal" ersetzt). Vorteil von einem Kurzbefehl ist, dass es auf Mac und iPhone läuft. Nachteil, dass dieses System besser mit künftigen Terminen funktioniert als generell mit jeder Art von Termin. Aber das lässt sich ja anpassen.
shortcuts://run-shortcut?name=cal&input=%7B%22type%22:%22event%22,%22title%22:%22Test%22,%22date%22:%2220.04.2023,%2009:00%22%7D
Ein Ausschnitt aus dem Kurzbefehl, um das Prinzip zu verstehen:
0
Nebula
Nebula17.04.2321:03
Ich hatte den Ursprungspost so verstanden, dass er nicht existierende Kalender-Events aufrufen möchte, sondern zu einem Datum springen will. Da hilft auch der Kurzbefehl nicht. Hook bietet meines Wissens keine URL-Schemata an, um unspezifisch Tage anzuspringen. Es gibt nur die ID. Wie soll ich die mit einer Formel in Numbers erraten?
„»Wir werden alle sterben« – Albert Einstein“
0
marm17.04.2321:22
Ok, stimmt, da ist nur von Datum und nicht von Events die Rede.
Ein Kurzbefehl zu erstellen, der im Kalender z.B. den 14.04.2023 öffnet, ist aber trivial.

shortcuts://run-shortcut?name=cal2&input=14.04.2023
0
Nebula
Nebula17.04.2322:45
Interessant, sofern man keine bestimmte Ansicht wünscht, geht es also auch ohne App. Bzw. das Wechseln der Ansicht lässt sich dann mit AppleScript im Shortcut unterbringen.

tell application "Calendar" to switch view to day view

Ich habe mich wegen solcher Unzulänglichkeiten bislang nie groß mit Shortcuts beschäftigt, weil ich ohnehin für jeden Pups auf AppleScript zurückgreifen muss. Aber das mit dem URL Scheme ist zumindest ein interessanter Weg, AppleScripts auszuführen.
„»Wir werden alle sterben« – Albert Einstein“
0
marm17.04.2323:17
Nebula
Aber das mit dem URL Scheme ist zumindest ein interessanter Weg, AppleScripts auszuführen.
Auf jeden Fall! Gegenüber AppleScripts haben Shell, Python3, Ruby usw. den Vorteil, dass sich Shortcuts-Variablen einfach ins Skript einbauen lassen. Hier z.B. Python (auch wenn da Shell steht):
0
Nebula
Nebula18.04.2309:09
Das ist cool. Einem AppleScript kann man immerhin eine Variable oder ein Wörterbuch mitgeben.
„»Wir werden alle sterben« – Albert Einstein“
0
marm18.04.2309:25
Nebula
Das ist cool. Einem AppleScript kann man immerhin eine Variable oder ein Wörterbuch mitgeben.
Und wenn Du Skripte in Shortcuts verpackt an Deine Kollegen auslieferst, gibt es auch keine Probleme mit Gatekeeper.
0
Nebula
Nebula18.04.2309:31
Meine Skripte signiere ich, Gatekeeper ist kein Problem. Kurzbefehle mit Skripten laufen auch nicht out-of-the-box. Die Fehlermeldung ist dabei leider wie Gatekeeper nicht selbsterklärend und eher abschreckend.
„»Wir werden alle sterben« – Albert Einstein“
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.