Multiple counts in one table output should be one table
Syntax error, remove the ( and ) from the parent query, do away with the outer FROM and the extra count's. That is,

SELECT
   (SELECT count(TXN) 
        FROM sale1 
        WHERE DATE(SALEDATE)=DATE(DATE_SUB(NOW(), INTERVAL 1 DAY))
   ) AS c1,
   (SELECT count(TXN) 
        FROM sale1 
        WHERE RESPONSE='Y' 
        AND DATE(SALEDATE)=DATE(DATE_SUB(NOW(), INTERVAL 1 DAY))
   ) AS c2;

Note count of count i.e. count(count(*)) will normally give you 1.