multiple declaration cells following one another form a group (this behaviour is necessary in order to work properly inside environments. The grouping, however, restricts the scope. We have to enforce that they won't group (probably with some sort of separator cell that breaks the grouping) or modify the algorithm that decides which globals shall apply (I would prefer the former).
Check different situation: there is already a cell of style "GlobalDeclaration" and something is selected when pressing the button, nothing is selected, there is no cell, etc.
I had an expression E selected and pressed the "cond⇒" button from "structure→declarations".