How to use a variable on a table name : SET @tab = 'tableName'

SET @field1 = (SELECT field1 FROM '+@tab+' WHERE colName IS NULL)

I'm getting this error:

Must declare the table variable "@tab".

I need to set the result on @field1