Make the Name Box interactive: jump-to-reference + table/sheet/named-range autocomplete
The top-left Name Box was a plain read-only display of the current
selection ("Umsatz::B2:E6"). It's now an editable input that navigates
on Enter, using the same reference syntax a formula would: a bare cell
or range on the active table, a table/sheet-qualified reference
(Tabelle::A1, Blatt!Tabelle::A1:B5), a named range's name, or -- beyond
what's valid formula syntax -- a bare table name (selects the whole
table) or bare sheet name (switches to it).
Autocompletes against named ranges, table names, and sheet names as you
type (Tab accepts the highlighted suggestion, click jumps there
directly); an unresolvable entry reports via a toast and leaves the text
selected for a quick retry rather than silently reverting.
document.ts gains two new functions (jumpToNameInput, nameBoxSuggestions)
built on the existing parseFormula/resolveTableName/resolveNamedRange
machinery already used elsewhere in the store -- no engine changes.
FormulaSuggest.vue's prop type was loosened so the same dropdown
component serves both this and the existing formula function-name
autocomplete.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -190,11 +190,32 @@ Zeilenhöhe der Tabelle geklemmt.
|
||||
an der unteren Kante lässt sie sich per **Maus** (natives `resize: vertical`)
|
||||
auf beliebig viele Zeilen aufziehen, um mehr auf einmal zu sehen. `Alt`+`Enter`
|
||||
bzw. `Cmd`+`Enter`, `F4` und `Esc` verhalten sich wie im In-Zellen-Editor. Das
|
||||
Namensfeld links davon (ebenso das Pendant links in der **Statuszeile**, die
|
||||
mit den Blatt-Reitern eine gemeinsame Zeile am unteren Rand teilt) zeigt bei
|
||||
einer Mehrfachauswahl nicht nur die aktive Zelle, sondern den ganzen markierten
|
||||
**Bereich** (`Umsatz::B2:E6`), bei einer diskontinuierlichen Auswahl zusätzlich
|
||||
`+N` für die weiteren Rechtecke.
|
||||
Namensfeld links davon (ebenso das rein lesende Pendant links in der
|
||||
**Statuszeile**, die mit den Blatt-Reitern eine gemeinsame Zeile am unteren
|
||||
Rand teilt) zeigt bei einer Mehrfachauswahl nicht nur die aktive Zelle,
|
||||
sondern den ganzen markierten **Bereich** (`Umsatz::B2:E6`), bei einer
|
||||
diskontinuierlichen Auswahl zusätzlich `+N` für die weiteren Rechtecke.
|
||||
|
||||
**Namensfeld als Sprungmarke** (Exceleigenschaft, hier zusätzlich mit
|
||||
Autovervollständigung): das Feld selbst ist editierbar. Eingetippt und mit
|
||||
`Enter` bestätigt springt es zu jedem gültigen Ziel — derselben Syntax, die
|
||||
auch eine Formel verwenden würde:
|
||||
- eine **Zelle** (`A1`) oder ein **Bereich** (`A1:C10`) auf der gerade
|
||||
aktiven Tabelle,
|
||||
- ein **qualifizierter** Bezug auf eine andere Tabelle/ein anderes Blatt
|
||||
(`Tabelle::A1`, `Blatt!Tabelle::A1:B5`) — wechselt Blatt/Auswahl mit,
|
||||
- ein **benannter Bereich** (`Umsatz_Q1`) — markiert dessen Zielbereich,
|
||||
- ein bloßer **Tabellenname** (`Kosten`) — markiert die ganze Tabelle,
|
||||
- ein bloßer **Blattname** (`Blatt 2`) — wechselt dorthin.
|
||||
|
||||
Während des Tippens schlägt eine Dropdown-Liste passende **benannte
|
||||
Bereiche**, **Tabellennamen** und **Blattnamen** vor (Präfix, groß-/
|
||||
kleinschreibungsunabhängig; `↑`/`↓` navigiert, `Tab` übernimmt den markierten
|
||||
Vorschlag ins Feld, ein Klick springt direkt dorthin). Ein nicht auflösbarer
|
||||
Text (z. B. eine echte Formel wie `SUM(A1;A2)` — das Feld navigiert, es
|
||||
wertet nicht aus) meldet sich per Toast und lässt den Text zum Korrigieren
|
||||
markiert stehen; `Esc` verwirft die Eingabe und zeigt wieder die aktuelle
|
||||
Auswahl.
|
||||
|
||||
**Bezüge per Maus einfügen ("Point-Mode")**: sobald der Editor (Zelle oder
|
||||
Formelleiste) eine Formel (`=…`) enthält, fügt ein **Klick** auf eine Zelle —
|
||||
|
||||
Reference in New Issue
Block a user