How to Write LibreOffice Calc Formulas and Basic Macros Version-Locked

Calc macros fail when they paste Excel VBA and invent a demo table. Paste a sample row. Lock 24.8 vs 7.6.
The matching generator is the LibreOffice Calc Formula and Basic Macro, Version-Locked (24.8 vs 7.6), Sample Row Required (Libreoffice Calc Formula And Basic Macro Version Locked 24 8 Vs 7 6 Sample Row) prompt. Browse related cards in the PromptDig library (Browse more prompts). When a filled run survives, share the version you actually use (Share a prompt).
Refuse to run without a sample row
Write a LibreOffice Calc formula and a BASIC macro locked to 24.8 or 7.6. A sample row is required. Not Excel VBA and not Google Sheets. Start by filling Inputs, not by asking the model to remember last week's run. If a field is blank, write NONE or NOT IN INPUTS and leave it blank through Generate. The card is built so the model cannot honestly invent a number, owner, URL, or command that you did not paste.
Paste these fields before you hit run:
Job (what the formula must return): [Job]
LibreOffice version I lock (24.8 / 7.6 / UNKNOWN): [Version]
Sample row I paste (required): [Sample]
Sheet and cell names I allow: [Cells]
Words I must not use: [Banned]
What I must never invent: [Never]
Output format: [Format]
Language for comments: [Lang]
Fork notes I require (24.8 vs 7.6): [Fork]
Macro name I allow: [Macro]
That inventory is the honesty ledger. Anything that does not appear there is forbidden in the draft. If you catch yourself adding a nice-to-have after the run, you are no longer using the card. You are ghostwriting. Put the extra fact in Inputs and run again.
Quote 24.8 or 7.6 in the sketch
Generate is numbered on purpose. Do not skip a step because the first paragraph looked done. The early steps exist to stop later prose from smuggling claims.
Walk the Generate list in order:
- Honesty ledger: Job, Version, Sample (quoted), Cells, Macro, Fork, Lang. Forbidden: Excel VBA, LAMBDA, QUERY, invented sample values.
- Sample gate: if Sample is blank, stop and write SAMPLE ROW REQUIRED. Do not mint a demo table.
- Version fork: if 24.8, note 24.8-only functions only when Job needs them. If 7.6, do not use 24.8-only functions. If UNKNOWN, write VERSION UNKNOWN.
- Formula: one Calc formula using Cells. Walk the Sample row. Print the returned value from Sample only.
- BASIC macro: Sub Macro as named. Idempotent notes. No Excel Application.WorksheetFunction.
- Refuse: VBA Range().Select, Apps Script SpreadsheetApp, 365 LAMBDA.
- Never: do not invent a named range that is not in Cells.
- Compliance pass: cut Banned and Never. Print Version quoted or UNKNOWN. Format as Format.
If a step asks for a version lock, quote the version from Inputs in the output. If a step asks for a refuse list, keep the refuse list in the published artifact, not in a sidebar you delete. Reviewers should see what the model was not allowed to do.
Walk the sample row through the formula
Most failures are the same shape: a missing field gets a confident fill. A conversion rate appears. A Gradle task appears. A flash point appears. A caption appears on a job that asked for slide text only. Your review is to search the draft for numbers, names, and commands, then grep Inputs. No match means cut.
Honor the constraints as hard stops, not vibes:
- LibreOffice Calc from Job and Sample. Not Excel VBA and not Google Sheets.
- Sample row is required. Honor 24.8 vs 7.6.
- Only Cells and Macro named in Inputs.
- No emojis.
When the card says not legal advice, not certification, not an exam dump, or not a caption engine, that sentence belongs at the top of the output. Deleting it to look more finished is how you inherit risk.
Refuse Excel VBA and Apps Script
Finish with the compliance pass the prompt already asks for. Quote the banned-word hits. Cut them. Print character counts when the job has a cap. Print word counts when the job has a budget. List gaps as gaps. Five missing facts are more useful than one smooth paragraph.
Tags on the card (libreoffice calc formula basic, calc 24.8 vs 7.6 lock, calc sample row required) are a reminder of the job shape, not an invitation to wander into a neighboring cluster. If you need a different surface, open a different PromptDig card rather than stretching this one.
Fill the card, then run
Replace every bracket. Run on ChatGPT, Claude, or Gemini. Read the ledger first, then the artifact. If the model invents a commit, KPI, DOI, PEL, bid, or logo, discard the run. Tighten Inputs. Run again. Share the filled card that survived, not the first draft that sounded done.