in reply to Re: argument isn't numeric in sprintf
in thread argument isn't numeric in sprintf

$frsmt =~ tr[.][]d; # eliminate all dots from the number $frsmt =~ tr[,][.]d; # turn all commas into dots

You have specified the /d option on the second tr/// but you aren't deleting anything.

You can combine both statements with a single tr///:

$frsmt =~ tr[,.][.]d; # eliminate all dots from the number and turn al +l commas into dots