A function accepts a value and returns an expression. The short form each expression is equivalent to (_) => expression. Inside a row function, [Amount] reads the Amount field of the current record. A named argument makes the same dependency explicit: (row) => row[Amount].
Functions are values, so you can bind one in let and pass it to Table.AddColumn or List.Transform. Their scope matters. An inner each introduces a new current value; it doesn't keep the row from an outer each. Give one of those values a name when both are needed. These examples keep the function inside Work, which is a repeatable way to test it before making a separate function query in Excel. The editor runs this supported M subset locally on the supplied files.