Calligra Sheets · Find and replace · Beginner
Find and Replace Entries Safely in Calligra Sheets
Replace exact status codes inside a selected Calligra range, check formula and note guards, and recover safely from a wrong scope.
Official 26.08.2 source and KDE handbook reviewed; native application verification pending · Editorial standards
Replace an old status code only in the cells you intend. This example deliberately includes a near match, a different case, an out-of-range note and a formula, so an overly broad operation is visible.
Scope and important limitation
Calligra Sheets 26.08.2 desktop source, English interface, with KDE handbook cross-checks; instructions and expected results are documentation-backed and have not been executed in the native application. Linux-oriented file recovery; Windows, macOS and distribution-specific builds require separate verification.
In the reviewed 26.08.2 implementation, Cell Values search uses cell input and skips formula cells. It is not an Excel-style choice between searching formulas and calculated results. The source also does not implement automatic searching of the next worksheet. Restrict this exercise to one selected range on one sheet. No native execution or screenshot is claimed.
Build an audit fixture
Create a blank workbook. Enter headers in row 1 and the following values in rows 2–6. The D2 expression must be a formula, not text; leave D3:D6 empty.
| Row | A: Record | B: Status | C: Note | D: Formula check |
|---|---|---|---|---|
| 2 | R01 | HOLD | HOLD outside scope | ="HOLD" |
| 3 | R02 | HOLDOVER | Keep this status | |
| 4 | R03 | hold | Lowercase exception | |
| 5 | R04 | HOLD | Approved to release | |
| 6 | R05 | READY | HOLD note |
Also enter F1=Guard, F2=HOLD, A8=Literal count and B8==2+2. The last formula should display 4; it is a simple independent formula-preservation sentinel, not a count of matching statuses.
Save with File → Save As… as status-original.ods, using OpenDocument SpreadSheet. Then save a working copy as status-working.ods. Keep the original unchanged for recovery and alternate tests.
Find before replacing
- Select B2:B6, not an entire column or single active cell.
- Open Edit → Find…. Search for
^HOLD$, with regular-expression matching enabled and case-sensitive matching enabled. The anchors mean the entire cell input must be exactly the uppercase word. - Enable the selected-text/selected-range restriction in the Find dialog. In More Options, use Search in: Cell Values and Search direction: Down then Across. Leave Search entire sheet off, and do not start partway through the range from the cursor. A selected range is not sufficient unless the selected-only option is active.
- Find the matches. Expected matches are B2 and B5 only. B3 (
HOLDOVER), B4 (hold), C2, C6, D2 and F2 must not be included. Close the Find operation when done; decline restarting it after reaching the end.
The selected-only control comes from KDE’s Find dialog and may be labeled Selected text even in a spreadsheet. If your build does not expose that restriction, cancel rather than treating a highlighted range as proof of scope. Recheck the exact installed dialog before bulk editing.
Replace one, then the remaining match
Find can move the active selection to the last match, so reselect B2:B6 before opening Edit → Replace…. Set the pattern to ^HOLD$ and replacement to READY. Explicitly recheck every option: regular expression on, case sensitivity on, selected-only on, search from cursor off, backwards off, whole-words-only off, Cell Values, Down then Across, and Search entire sheet off. Do not assume Find settings carried over correctly.
Enable Prompt on replace. Start the operation and choose Replace for the first match, B2, then Skip for B5. Let the operation reach the end and decline a restart so the replacement command completes; do not cancel midway. Verify that B2 is now READY, B5 is still HOLD, and the guard cells are unchanged.
For the remaining operation, close any replacement prompt and reselect B2:B6. Reopen Edit → Replace…, enter the same pattern and replacement, and reset all options as above. Turn off Prompt on replace for this counted bulk operation. The expected number of further replacements is one, at B5. Do not accept an offer to restart the search after the range is finished.
Check the actual cells, not only a summary message:
| Cell | Expected final content |
|---|---|
| B2 | READY |
| B3 | HOLDOVER |
| B4 | hold |
| B5 | READY |
| B6 | READY |
| C2 | HOLD outside scope |
| C6 | HOLD note |
| D2 | Formula ="HOLD", displaying HOLD |
| F2 | HOLD |
| B8 | Formula =2+2, displaying 4 |
Save the intended result as status-final.ods. Close and reopen it, then verify the guard cells and formula inputs again. This is the final deliverable; optional experiments below use separate copies.
Recovery and a larger-range check
If scope or match settings were wrong, do not save over the original. Within the same open editing session, Undo may help, but verify all affected cells. For a deterministic reset, close the damaged working copy without overwriting the original, open status-original.ods, and immediately save it under a new working filename. Undo history is not a recovery method after reopening.
For an alternate bulk test, start from the unchanged original and save as status-growth.ods. Add A7=R06, B7=HOLD, C7=New approved record. Select B2:B7. Configure the exact same anchored, case-sensitive, selected-only replacement with prompting off. Expected replacements are now three: B2, B5 and B7. B3 and B4 remain exceptions. Save and reopen the growth copy; status-final.ods should still have the original five records.
To verify the formula boundary, inspect D2 directly: its input remains ="HOLD" throughout. Do not broaden this exercise to formula rewriting by changing Search in; the reviewed dialog offers Cell Values and Comments, not a formula-text mode. Edit a known formula explicitly when that is the actual task, and validate its dependents separately.
See absolute references for controlled formula edits and file compatibility for retaining the workbook format.
Sources and verification boundary
The KDE command reference documents Edit commands. The official Calligra 26.08.2 source archive, sheets/ui/actions/FindReplace.cpp, dialogs/FindDialog.cpp and sheets/part/calligrasheets.rc, supplies the scope, formula exclusion and menu placement. Expected match counts were calculated separately; KDE KTextWidgets 6.18 Find dialog source and replacement source corroborate Selected text, Prompt on replace, and the prompted replacement controls; distribution dependency versions can vary. Actual prompt behavior, translated labels and native screenshots remain unverified.