Best way to display more table columns and rows than I have room for?

I have a similar problem to what is mentioned in Best way to display more table columns than I have room for?. But to make things a little more difficult, the table has approximately 1000 rows and 64 columns. I thought of splitting up the table but the users insist on viewing all the columns at once. Hence I have come up with one option where the first two to three columns with name, ID are set to a freeze state (like in excel) and rest of the columns scroll under these columns; i.e. the table gets a horizontal scroll and to solve the row issue i have given a pagination. I have recommended that the table will be displayed only if there are 100 rows, if there are more than 100 rows the user will get an export to excel/import from excel option.

Is there a better way to handle this?