You're not saying what the use case is for this. Can you elaborate? Why would one need to specify values for all 12 months at the same time, and why would some need to be "estimated" and some "requested" instead?
If you don't need all at the same time, have you thought about just making it one entry with a popup for the month name? Or if you need more than one but not usually all 12 months, building a list like
? I.e. have only one (or a few, whatever a typical number of months that people will request at a time) field, and "+" and "-" buttons to add/remove fields ? The month name would then be a popup, allowing selection of all months that aren't yet present in the list.
Alternately, you could display it as a table, with the months listed horizontally, and below each name the edit field and switch button. (Also, how large will those numbers be? You can make the fields narrower, they only need to be large enough to hold the widest number).
Depending on what an estimate and a request is for, you could also remove that from the table and put it below the actual month list, allowing a user to select ranges of months using popups, like
Estimate: [October v] through [December v]
Request: [January v] through [September v]
Or even automatically assign these values (e.g. if estimates are needed only for months that haven't happened yet) and just display:
Estimating October through December
Or just have one UI element per month for estimating those months that can't be requested for some reason. Though one needs to be careful with this, as you don't want users to be unsure what the opposite of "estimate" will turn out to be.
But really, I don't know what your target audience or even use case is, so it's hard to make any substantial suggestions.