Found the problem, corrected, and then added a few little options, giving
Code:
on *:start:{
  if !$hget(NB) { .hmake NB 100 }
  if $exists(NB.txt) { .hload NB NB.txt }
}
on *:exit:{
  .hsave -o NB NB.txt
}
on *:disconnect:{
  .hsave -o NB NB.txt
}
menu nicklist {
  -
  Notify BanList Settings
  .Add Nick: banlist add $iif(!$snicks,$$?="Nick(s) To Add",$snicks)
  .Remove Nick: banlist del $iif(!$snicks,$$?="Nick To Remove",$snicks)
  .View Ban NickList:.hsave -o NB NB.txt | run NB.txt
}
alias banlist {
  var %nicks = $remove($replace($2-,$chr(32),$chr(44)),$me)
  while %nicks {
    notify $iif($1 == del,-r) $gettok(%nicks,1,44)
    .hadd -m NB $gettok(%nicks,1,44) $iif($1 == add,Banned)
    %nicks = $remtok(%nicks,$gettok(%nicks,1,44),1,44)
  }
}
on *:notify: {
  if $hget(NB,$nick) {
    var %a = 1, %b = $chan(0)
    while %a <= %b {
      if ($me isop $chan(%a)) {
        ban $iif($nick ison $chan(%a),-k) $chan(%a) $nick
      }
      inc %a
    }
  }
}
 


I realize there's a lot more code than originally, but I think you'll like the additions. Please review the code before using it so that you understand what I added, and why.