Hmm.. I don't this is 100% what you were going for, but I *think* it'll work.
I did this with 7zr by they way... I think it's quite similar.
ls /your/dir | grep -v ".7z" | grep -v ".zip" > /tmp/out.1
7zr a arch1.7z @/tmp/out.1
I tried it a few ways before and I was getting the same error you were. I think it has to do with the brace expansion, but I'm not sure. This just creates a list file and then calls that list file.
Hope that helps.