php – Erro ao cadastrar no banco de dados PDO

Acho que estou comendo bola com algo simples, mais que não consigo achar o erro.
Tenho uma CRUD em php PDO, porem no insert ela retorna Insert value list does not match column list, o famoso erro de número de colunas.

Na minha tabela tenho 21 colunas, contudo neste insert só quero enviar 5 deles, segue os códigos

Classe preparedStatements

private function preparedStatements($Query, $Parametros)
    {
        $this->countParametros($Parametros);
        $this->Crud = $this->conectaDB()->prepare($Query);

        if ($this->Contador > 0) {
            for ($I = 1; $I <= $this->Contador; $I++) {
                $this->Crud->bindValue($I, $Parametros($I - 1));
            }
        }

        $this->Crud->execute();
    }

Classe para insert

 public function insertDB($Tabela, $Condicao, $Parametros)
    {
        $this->preparedStatements("insert into {$Tabela} values ({$Condicao})", $Parametros);
        return $this->Crud;
    }

Chamada da classe

$Crud = new ClassCrud();

$Crud->insertDB(
    "add_users",
    "?,?,?,?,?",
    array(
        $indicado,
        $login,
        $email,
        $nome,
        $pws
    )
);

Como podem ver, estou enviado 5 campos e 5 variáveis, mais o erro informa que a contagem não esta correta, não sei onde esta o erro, a não se que seja obrigado a enviar todos os campos mesmo que não os sejam preenchidos.