For this case, you can implement a simple trigger (onEdit) to auto populate your sheet every time the material property is changed. You can do it like this:
function onEdit(e) {
var ss = e.source;
var sh = ss.getActiveSheet();
var column = e.range.getColumn();
var row = e.range.getRow();
var material = e.value;
if (column == 2) {
if (material == "Copper") {
sh.getRange(row, column+1,1,2).setValue("");
sh.getRange(row, column+3,1,2).setValue("NA");
}
else if (material == "Steel") {
sh.getRange(row, column+1,1,2).setValue("NA");
sh.getRange(row, column+3,1,2).setValue("");
}
}
}
In this script, I have added .setValue("") to reset the other fields with no "NA".
To test the script, I have created a simple replication:

When I set the Material property to "Steel", I get:

On the other hand, when I change the Material property to "Copper", I get:

You can refer to the Simple Triggers Guide and Event Objects Guide for more details.