It definitely works to switch the matrix and switch to a certain cell within the matrix at the same time.
A simple example:
Here I've loaded three matrices - Piccolo, Flute and Piccolo/Flute in Octaves. The keyswitches for the matrices are G1, G#1 and A. In the matrix, there are four cells - staccato, sustain, sforzato and legato, aligned along the X-axis. The keyswitches for the X-axis are C1, C#1, D1 and D#1.
[img]http://i.imgur.com/F7UK235.png?1[/img]
So, in order to have the expression map switch to the legato patch of the piccolo matrix, I would have to trigger the keyswitches G1 and D#1 simultaneously. That is no problem: you only have to highlight the legato articulation in the expression map editor and choose two "note-on" controllers for the articulation: one set to G0, the other one to D#0. (Note that the middle Cs in Cubase and in Vienna Instruments are by default defined differently, so the keyswitches in the expression map always have to be one octave lower).
[img]http://i.imgur.com/SYlk6EA.png?1[/img]
When you choose "legato" in the articulation lane of the Cubase MIDI editor, the expression map automatically sets the keyswitches to G and D#. It definitely works without problems. Perhaps you have been making some mistake in the setup?
What doesn't work is to switch to one cell in matrix 1, and switch to another cell in matrix 2 simultaneously. That cannot work because in the Vienna Instruments sampler, there is always just one matrix "active" at the time.
But in the end, all of this doesn't really help us with using expression maps while playing live, as Cubase unfortunately disables manual activation of keyswitches as soon as an expression map is loaded that uses these keyswitches. If I unload the expression map and press the G and D# keys on my keyboard, Vienna Instruments switches to the right matrix and cell. But when I load the expression map, I can't trigger them on the keyboard any more. I don't know why they have to have it like this, as it's obviously nonsensical.