Since your parameter `i` in `Button` is outside `Table` (because of the `HoldRest` attribute of `Button`), it is not a number anymore. However you could do e.g. this : Button["Number: " <> ToString @ #, Print @ #] & /@ Range[5] If there is a need for `i` parameter one can do this : Button["Number: " <> ToString @ #, Print @ # ] & /@ Table[i, {i, 5}]