With this dynamic block, it will prompt you for the section number, just like your lisp will. Only it has many improvements over your block 2 blocks. Why won't you use a dynamic block? Give it a try, you might like it. You won't need your code at all.
The real problem with your lisp is that the -INSERT command (you were using INSERT, which displays the block palette), does not accept any arguments for entering attribute values. That happens in a dialog that appears after the block is inserted. If you wanted to, you could get the blocks that were just inserted and get their attributes and update them. I still think the dynamic block is more user friendly and less hassle.