He means that you gave us an example we can't run
Your create table creates one set of column names, and your insert references different ones.
Then you are also missing a quote, and in 1 row transposed the order of the values.
I THINK what you want for sample data is this:
INSERT INTO MyTable (Number, [HD_DATE_TIMEX],[TRANS_NO],[MESSAGE_COUNTER],[MESSAGE_2], [SQL_LAST_UPDATE])
VALUES ('0000000003','2015-02-25 13:18:02.000','00','!','CHK # 2452 FOR $122.49 REJECTED AS NSF ','2015-02-25 13:18:03.000')
INSERT INTO MyTable (Number, [HD_DATE_TIMEX],[TRANS_NO],[MESSAGE_COUNTER],[MESSAGE_2], [SQL_LAST_UPDATE])
VALUES ('0000000003','2015-02-25 13:18:02.000','00','"','ON 2/25/15','2015-02-25 13:18:03.000');
INSERT INTO MyTable (Number, [HD_DATE_TIMEX],[TRANS_NO],[MESSAGE_COUNTER],[MESSAGE_2], [SQL_LAST_UPDATE])
VALUES ('0000000009','2015-02-18 11:03:43.000','00','!','Debbie CALLED TO GO OVER THE ACCT. SHE ','2015-02-25 13:18:03.000');
INSERT INTO MyTable (Number, [HD_DATE_TIMEX],[TRANS_NO],[MESSAGE_COUNTER],[MESSAGE_2], [SQL_LAST_UPDATE])
VALUES ('0000000009','2015-02-18 11:03:43.000','00','"','WILL BE MAILING PAYMENT THIS','2015-02-25 13:18:03.000');
INSERT INTO MyTable (Number, [HD_DATE_TIMEX],[TRANS_NO],[MESSAGE_COUNTER],[MESSAGE_2], [SQL_LAST_UPDATE])
VALUES ('0000000009','2015-02-18 11:03:43.000','00','#','WEEK.','2015-02-25 13:18:03.000')
But please confirm. And its good practice to test scripts you are going to post to make sure they are runnable.
I think the query you want is this:
SELECT m.Number,m.HD_DATE_TIMEX, STUFF((SELECT ',' + m2.Message_2
FROM MyTable m2
WHERE m2.Number = m.number
AND m2.HD_DATE_TIMEX = m.HD_DATE_TIMEX
ORDER BY m2.MESSAGE_COUNTER
FOR XML PATH ('')),1,1,'') MessageText
FROM MyTable m
GROUP BY Number,HD_DATE_TIMEX