Unlock the car with your key (Key Fob #1), adjust the seat to the position you like. Store this configuration under memory setting #1 (press the programming button then select memory location #1). This will save the seat settings in memory location #1 on your key. Lock the car with your key. Unlock the car with the second key (Key Fob #2), adjust the seat to a position that the user of key #2 prefers. Store this configuration under memory setting #1 (press the programming button then select memory location #1). This will save the seat settings in memory location #1 on the current key. It would be a good idea not to bring the second key into the car while you program the first and vice versa!
I believe there is also a setting somewhere in the iDrive menu that lets you select if the seat position should be changed as soon as you unlock the car or after you open the driver door. I have it set to change after opening the door, that way if I need to get something out of the trunk and I use the second key, it won't change the seat position.
Hope this helps.
2009 750i individual | Citrin Black Metallic | Platinum Merino Extended Leather | BMW Individual Composition Package (includes Sport Package) | Dynamic Handling Package | Multimedia Package | Technology Package | Executive Package