We have many rooms / in our house; / several of which /
(A) (B) (C)
have not been in use for years. / (no error)
At a glance, this looks like a poorly phrased test question. Where does the error lie?
If we replace the semicolon with a comma, the result is a grammatically correct sentence:
We have many rooms in our house, several of which have not been in use for years.
On the other hand, if we replace the relative "which" with the personal "them", the result is a different yet still grammatically correct sentence:
We have many rooms in our house; several of them have not been in use for years.
The error doesn't lie just with the semicolon or just with the relative pronoun. The error lies with the way that these two things, each in its own section of the model, aren't playing nicely with each other in this sentence.
It is quite possible that the instructions for this section of the exercise make the expected answer clear and unambiguous. It's even possible that the ambiguity is intentional. We simply don't know. We've only seen the question's model. We haven't seen the question's instructions or its answer key.
Yes, we usually expect the relative clause to reference the closest nominative structure. However, there are three such structures that end in the same place:
We have many rooms in our house |
many rooms in our house |
our house |
Since there's no difference in the distances involved, you'll need to choose your referent based on what makes sense (which, ideally, is what you would do anyway):
We have many rooms in our house, which makes it a good investment.
We have many rooms in our house, several of which haven't been used in years.
We have many rooms in our house, which is on the corner of Douglas and Fir.