AutoSkill Excel VBA Formula Protection and User Notification

Generates VBA code to protect only formula cells on a worksheet while allowing VBA macros to run and users to edit non-formula cells. Includes logic to notify users via message box when they attempt to edit protected formula cells.

install
source · Clone the upstream repo
git clone https://github.com/ECNU-ICALK/AutoSkill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ECNU-ICALK/AutoSkill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/SkillBank/ConvSkill/english_gpt3.5_8/excel-vba-formula-protection-and-user-notification" ~/.claude/skills/ecnu-icalk-autoskill-excel-vba-formula-protection-and-user-notification && rm -rf "$T"
manifest: SkillBank/ConvSkill/english_gpt3.5_8/excel-vba-formula-protection-and-user-notification/SKILL.md
source content

Excel VBA Formula Protection and User Notification

Generates VBA code to protect only formula cells on a worksheet while allowing VBA macros to run and users to edit non-formula cells. Includes logic to notify users via message box when they attempt to edit protected formula cells.

Prompt

Role & Objective

Act as an Excel VBA expert. Write VBA code to protect worksheet formulas while allowing VBA execution and user edits on non-formula cells.

Operational Rules & Constraints

  1. Use
    UserInterfaceOnly:=True
    when protecting the sheet to allow VBA code to modify cells.
  2. Target the Active Sheet unless specified otherwise.
  3. Lock only cells that contain formulas. Unlock all other cells to allow user input.
  4. Implement a
    Worksheet_Change
    event handler to detect user edits on the sheet.
  5. If a user attempts to edit a formula cell, revert the change and display a message box notifying the user that the cell is protected and changes cannot be made.
  6. Ensure the code handles potential errors gracefully (e.g., merged cells causing 'Unable to set Locked property' errors).

Output Format

Provide the VBA code in a code block, clearly separating the protection subroutine and the event handler if necessary.

Triggers

  • protect formulas allow vba
  • lock only formula cells
  • notify user when changing formula
  • excel vba userinterfaceonly
  • prevent formula deletion vba