Please review the datasheet, particularly chapter 10.1 USART Baud Rate Generator. You'll see that it's not feasible with standard crystal frequencies, but well possible with "UART" crystals like 14.74 MHz. You can even implement up to 921 kBaud
According to the datasheet PIC16F876 has no internal high speed oscillator as provided by other PIC devices. Not sure which configuration you are referring to.
For sure the datasheet can´t give a table for every possible XTAL frequency. (It surely has enough pages yet. )
But you are able to use the given formulas.
Or just recognize that 14.74(56)MHz is 4 x 3.6864MHz --> thus use the table of 3.6864MHz and multiply/divide the values by 4
I was using internal oscillator which limit me to 57600 baud rate.
The maximum Bauds rate is determined entirely by the clock frequency.
The rated maximum clock frequency is 20MHz, if pushed beyond that it might still work, and the Baud rate may be higher, but outside of design specification you are in uncharted territory.
Bit rate in high speed mode is Fosc/(16*(1+x)) where '1+x' is an 8-bit value in the SPBRG register. So with x=0 the maximum rated speed is 20,000,000/(16*1) = 1,250,000 Bauds.
This means that the nearest baud rate to 115200 with 16 MHz crystal in PIC16F876 is 16,000,000/(16*(1+7)) = 125,000, right ? where SPBRG register has to be written with 7.
This can also be achieved with 8 MHz oscillator internal 8,000,000/(16*(1+3)) = 125,000, where SPBRG register has to be set at 3.
Your calculations are correct and you can't get closer while using a 16MHz clock. It might just work, the error is about 2% which is the 'rule of thumb' limit for serial speeds. The internal sampling rate allows for slight speed differences. If you need closer speeds your only option is to use a different clock speed or to use a different PIC, for example a PIC18 which has a 16-bit baud rate divisor to allow finer selection.
I would recommend you change your clock to 18.432MHz if possible, the software will run a little faster but you can get the exact Bauds rate you want and it is easier to get common delays from the timers too. 18.432MHz is a common and cheap crystal frequency.
I agree with the previous posters, and you really should strive to use common industry use baud rates that your device can support with < 2% error for maximum compatibility.
Keeping this error at or less than 2% enables you to easily use common PC software, etc at standard settings to communicate to your device without framing errors or other UART faults.