why there is no simple rule to predict the possible ionic charges of element in middle of periodic table
TL;DR - The upshot is that there just happens to be a simple approximation governing small atoms but as the atoms get bigger and more complex, those approximations become less good and there is not another simple rule that works.

In more depth, the issue is a combination of two factors: distance from the nucleus and full/half-full valence orbitals.

In the first place, valence (outermost) electrons that are further away from the nucleus are more weakly bound than valence electrons that are closer. This means that the energy required to add or remove an electron is less, and so the charge given by a given electron matters less to the stability of the atom. Because of this, the further down the periodic table you go, the less the "normal" charges matter. As an example, Germanium is two rows below Carbon and is naturally found to have charges of +4 and +2 (as well as sometimes having +1, +3 and -4!).

The second factor is that elements find a special stability when their valence orbitals are either full (preferable) or half-full (less preferable, but still better than neither). So an element like Cr, which has almost no hope of gaining or losing enough electrons to look like a noble gas, "wants" to gain lose the 4 3d electrons, getting it down to a full 4s orbital. The tricky bit is that unlike the p orbitals, not all of the d orbitals have the same energy, so there are some that are more likely to be removed than others. There just isn't a convenient rule of thumb about which is which (nature is governed by physics, not approximations).