How to calculate estimated current taken by DS3231 when it is wired for alarm
To get the lowest current and have the RTC wakeup your micro you want to turn off VCC to the RTC and run on the battery supply.



I am assuming that your microprocessor goes to sleep but is still connected to the battery ....so you don't need another battery for the DS3231 RTC battery terminal ...just connect your VCC to it. But you will need a digital port on the Micro to drive the I2C pullups and the DS3231 VCC.
Before your micro goes to sleep the last thing you do is turn off the VCC to I2C pullups and DS3231 VCC. 
The connection on the DS3231 VBat keeps the timing and alarm comparators/INT* going, and that transition brings your micro out of sleep ...you then enable the DS3231 VCC/Pullups and can use I2C to reset your alarm. 

I've no idea what micro you are using but something like an ATMEGA328P will cost you about 7-10 uA in deep sleep (at 3-4.2 V LIon with no regulator) and the DS3231 will cost about 2-3 uA running from the VBat terminal. All up if you arrange your I/O correctly you should be easily able to get down to around &lt;15-20 uA total at 3.3 V. 

From comments:
When you turn off VCC  to the DS3231, most of the logic inside is then unpowered. The VBat input only keeps the timing, temperature compensation and comparator logic working. There is no 'calculation' for current when running from VCC, simply the bands of current specified in the datasheet.
For example, the VCC current will be as high as 575-650 uA when temperature conversions occur (which will happen automatically every 64 seconds).
You can read Application note 3644 for more details on the temperature conversions. If you are willing to lose timing accuracy you can turn temperature updates off, this reduces the VBat current to the lowest value ....about 2 uA. 

To understand what currents will flow you need to compare current flows for VCC and for VBat (two different sections of the datasheet). You don't want the I2C logic powered unless you need to talk to the chip, at all other times you want it to be off.
You can very simply work out the Clk/Data line high and low currents from the pullup values and the leakage currents. You know the I2C Clk speed you will communicate at, and you know the duty cycle of the clock so only you can make these calculations.

In reality, I would not be concerned too much by the absolute values of I2C, temperature or VCC powered functionality ...you are interested in the average current over time. Your microprocessor may range from just 10 uA or so in deep sleep to 20 mA or more (depending on what peripherals you have powered up). Your aim here is of course to keep the processor asleep most of the time.