Life In A... Metro

Rahul (Sharman Joshi) is a young man with dreams, working as a call center executive in a BPO in Mumbai. He silently loves Neha (Kangana Ranaut), a smart young woman who has made it up the ranks in a very short time, due to her relationship with her boss, Ranjeet (Kay Kay Menon).
In his 30s, Ranjeet is married to Shikha (Shilpa Shetty) and has a six-year-old daughter. Shikha is well educated and a trained dancer. Ranjeet and Shikha decided that she should stay at home and take care of the house and their child. Their eight-year marriage has turned loveless and bitter.
Neglected by an indifferent husband and bogged down by family chores, Shikha is attracted to maverick Akash (Shiney Ahuja). Akash is a struggling theater artist who is separated from his wife. Akash and Shikha's relationship starts as friendship and almost blossoms romantically, until Shikha feels guilty and cannot cross the limits that she has fervently guarded for years.
Amol (Dharmendra) is a 70-year-old man who has returned to India after 40 years to spend his last few years with his first love, Shivani (Nafisa Ali), who is also Shikha's former dance teacher.
Shikha's sister and Neha's roommate Shruti (Konkona Sen Sharma) works in at Radio Mirchi as a producer. She is 28 and desperate to get married. She meets Monty (Irrfan Khan) through a matrimonial site, but she is unimpressed by the straightforward and socially inept Monty. While Monty likes her and is ready to marry her, she declines when she finds him ogling her. She is, however, dreamy-eyed about her RJ, Rishi K. Her boss hooks her up with Rishi K, and her relationship with him blossoms.
Rahul has a novel strategy to rise up the ladder of success. He provides his flat to his superiors at the office, where they can safely bring their mistresses, girlfriends or prostitutes, in return for recommendation for his promotion. Ranjeet uses the flat to meet Neha.
Amidst one of their escapades in Rahul's flat, Neha asks Ranjeet about their future, which leads to an argument. He insults her and leaves. Indignant, she attempts suicide. Rahul finds her lying unconscious and saves her. He brings her back to his house, which brings them closer.
Shruti is heartbroken when she discovers that Rishi K is gay. She leaves the job and gets a new one where she again meets Monty. Slowly, they become friends. Meanwhile, Shruti learns about Ranjeet and Neha. Ranjeet panics and confesses to Shikha of his two-year affair with Neha. An already guilt-stricken Shikha cannot hold it in any longer and tells him about her emotional relationship with Akash. Ranjeet is shocked and angry, and decides to leave his wife.
Shivani dies. Amol regrets the decision to leave Shivani 40 years back, stressing the importance of love to Shikha and Shruti. Shruti realizes that she loves Monty and tells him so just as he is about to go for his wedding. Meanwhile, Akash decides to leave the country and asks Shikha to join him. On the other hand, Rahul is disillusioned with the way the metro has treated him and decides to resign and leave the city. Neha realizes that Rahul really loves her and follows him to the station. Ranjeet returns to Shikha, who is just about to leave for the station to see Akash.
Neha chases Rahul. Monty chases Shruti. Shikha comes to the station but not to accompany Akash. She wishes him good luck, tells him that she will miss him.
While the credits roll, we are shown Akash still roaming the streets of Mumbai, Shikha and Ranjeet are in a happier marriage, and Rahul is living happily with Neha. Shruti and Monty are also happily married and have a kid.

Question: How long has Ranjeet had an affair with Neha?
Answer: two years