Your right that it is a finite number. But there are just under 2^256 public keys, and that is a huge number. A trillion is nothing.
how many is 2^256? how many zeros is that?
2^256 is roughly 1 followed by 77 zeroes.
So like this: 100,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000
For comparison here is a measly trillion: 1,000,000,000,000
And remember that every additional zero makes the number 10 times larger. It's a staggering number really.