After searching the web for answer, I think I have some idea if we can program remote for different honda car.
With any remote, there is a FCC ID on the back of the remote. Try to match the remote. If you have the same FCC ID, your chances of being able to program the remote to work on different car will increased.
Here is an example. My 99 honda accord remote has FCC ID : KOBUTAH2T. My 03 honda pilot remote has FCC ID: NHVWB1U521.
I don't think the remote is compatible. I will end up getting some spare remote from ebay.
Speaking of programming. Here is the instruction I found on Deja.com:
1. Turn the ignition switch on (II).
2. Within 1 to 4 sec., push the transmitter lock or unlock button
with the transmitter aimed at the receiver (control unit). [MY NOTE:
I have found you just need be sitting in the drivers seat and hold it
anywhere]
3. Within 1 to 4 sec., turn the ignition switch OFF.
4. Within 1 to 4 sec., turn the ignition switch ON (II).
5. Within 1 to 4 sec., push the transmitter lock or unlock button
with the transmitter aimed at the receiver (control unit).
6. Within 1 to 4 sec., turn the ignition switch OFF.
7. Within 1 to 4 sec., turn the ignition switch ON (II).
8. Within 1 to 4 sec., push the transmitter lock or unlock button
with the transmitter aimed at the receiver (control unit).
9. Within 1 to 4 sec., turn the ignition switch OFF.
10. Within 4 sec., turn the ignition switch ON (II).
11. Within 1 to 4 sec., push the transmitter lock or unlock button
with the transmitter aimed at the receiver (control unit).
12. Confirm you can hear the sound of the door lock actuators.
Within 1 to 4 sec., push the transmitter lock or unlock button again.
13. Within 10 sec., aim the transmitters (up to three) whose codes
you want to store at the receiver, and press the transmitter lock or
unlock buttons. [MY NOTE: same as #2, you can hold it anywhere while
sitting in the drivers seat]
14. Turn the ignition switch OFF, and pull out the key.
15. Confirm proper operation with the new code(s). [MY NOTE: test
each remote out to make sure it works. My mistake originally was not
following step #12 precisely. The remote you were using during steps
1 through 11 must be pressed in step #12. I kept stepping over that
operation and wound up never programming that particular remote].
Here is also a link to a pdf file
http://www.handaaccessories.com/civic/civickeylessentry.pdf