How can I throw a form error if a submission field has a certain value in webform? I am using mymodule_webform_submission_presave() to alter some of the data before it gets saved.
I want to check if a certain select field has a certain option selected, dont save the form to the db and give the user an error like "you may not pick this" and dont save the form.

I would remove the option itself from the form but this wont be possible.

I've also tried to do it via the webform gui but there is no rule which says "this select may not have this option selected", is there?

Thanks!
Create your own validation function of your webform and do it there:

function modulename_form_webform_client_form_FORMID_alter(&amp;$form, &amp;$form_state, $form_id) {
     //FORMID - your webform id
    $form['actions']['submit']['#validate'][] = 'modulename_form_webform_client_form_FORMID_validate';

}

function modulename_form_webform_client_form_FORMID_validate($form, &amp;$form_state) {
    //validate it here
    if ($form_state['values']['yourvalue'] == 'somevalue') {
        form_set_error('you can\t do that');
    }
}


also you can use hook_form_alter to provide your own validate function.
Further reading form_set_error, hook_form_alter,