So I have this HTML on my sheet: <select name="attr_spellclass01_name" title="spellclass01_name"> <option value="Spellcasting Class 1" selected>None</option> <option value="class01">Class 1</option> <option value="class02">Class 2</option> <option value="class03">Class 3</option> <option value="class04">Class 4</option> <option value="class05">Class 5</option> <option value="class06">Class 6</option> </select> Elsewhere on the sheet, attributes like class01_name, class01_level, class02_name, class02_level, etc., are defined by inputboxes. I wish to set other attributes (spellclass01_display and spellclass01_casterlevel) based on the values of the attribute related to the select choice above. So if "class02_name" was "Wizard" and "class02_level" was "5" selecting Class 2 would set these other attributes to "Wizard" and "5" respectively. I have tried numerous ways in my sheetworker code to get this to work with no success. I just don't know the right syntax for building and assigning the value, so I will stop flailing and guessing and ask for help. Sheetworker code: on("sheet:opened change:spellclass01_name", function() { getAttrs(["spellclass01_name"], function(value) { switch(value.spellclass01_name) { case "Spellcasting Class 1": setAttrs({ "spellclass01_display": "Spellcasting Class 1", "spellclass01_casterlevel": "0" }); break; default: setAttrs({ "spellclass01_display": value[spellclass01_name + "_name"], "spellclass01_casterlevel": value[spellclass01_name + "_level"] }); } }); }); Any help greatly appreciated. Thanks!