Well, you could program something like what I posted earlier, where the output of a rung is determined by another input independant of what button you pushed.
button input selector1 output1
|----| |--------+----| |----( )----|
| selector2 output2|
+----| |----( )----|
That works for a button that has 2 possible outputs, depending on whether the selector has activated "selector1" or selector2".
You could make it more advanced by doing something like this:
button input selector1-1 selector2 output1
|----| |--------+----| |----+---| |--------( )----|
| | selector2-2 output2|
| +---| |--------( )----|
| selector1-2 selector2-1 output3|
+----| |----+---| |--------( )----|
| selector2-2 output4|
+---| |--------( )----|
That looks harder, but really, what your doing is saying this:
When someone presses the button, there are 4 possible things the button could do.
The first action is done if both selector switches are in position 1.
The second action is done if selector switch 1 is in position 1 and selector switch 2 is in position 2.
The third action is done if selector switch 1 is in position 2 and selector switch 2 is in position 1.
The fourth action is done if both selector switches are in position 2.
This is one way of programming that. You could also create a rung for each output, but that take longer to program, and is more of a pain in the ***. When you see this, you know that pushing the button could do any of those things. Rather than tracking down every rung that involves checking if the button has been pressed.
And since we know that each selector switch can only be in in state at one time, we don't need to add anything to make sure that only 1 output happens at once.
How much ladder logic do you understand? I'm not going to type out an entire introduction to ladder logic if I don't have to, lol.
I highly suggest you get connected to your PLC with the proper program, and play around with that for a while, rather than spending all your time in something else. Getting familliar with your programming environment is always a good thing, and the more things you learn about what you can do in one environment, the easier it gets to figure out a new one. This is coming form someone who has done coomputer programming in various software ranging from visual basic to turing, PHP and JAVA, using a couple different environments. After a while, learning a new environment is not a very big deal, because you have a good idea of what each one is capable of. The same thing goes for PLC programming software. The more your familiar with, the easier it gets to learn a new one.