This question has been answered by Bruno17. See the first response.
<?php
//$parent = '75';
$parent = '39';
$c = $modx->newQuery('modResource');
$c->where(array('parent' => $parent));
if ($collection = $modx->getCollection('modResource', $c)) {
foreach ($collection as $resource) {
$data = array();
$data['username'] = $resource->getTVValue('user_name');
$data['email'] = $resource->getTVValue('arzt-email');
$data['fullname'] = $resource->get('pagetitle');
$data['passwordnotifymethod'] = 'e';
$data['active'] = '1';
$data['userpage_id'] = $resource->get('id');
$data['mailTpl'] = 'newUserMail';
$group = array();
$group['usergroup'] = '3';
$group['role'] = '5';
$data['groups'] = array();
$data['groups'][] = $group;
//echo $data['fullname'];
if ($user = $modx->getObject('modUser', array('username' => $data['username']))) {
//user exists allready
} else {
$response = $modx->runProcessor('security/user/create_custom', $data);
if ($response->isError()) {
//$updateerror = true;
//echo $errormsg = $response->getMessage();
//echo 'error';
}
if ($object = $response->getObject()) {
$userid = $modx->getOption('id', $object, '');
$resource->setTVValue('user_id', $userid);
}
}
}
}
$data['mailTpl'] = 'newUserMail';
$modx->runProcessor('security/user/create', $data);