diff --git a/aleksis/apps/alsijil/frontend/components/coursebook/absences/AbsenceCreationForm.vue b/aleksis/apps/alsijil/frontend/components/coursebook/absences/AbsenceCreationForm.vue
index 1d392d83b7cdea91df0f037712a653b89f5f824b..3dc66363684c38a0ae02fbfc3a5a9992b8562e9c 100644
--- a/aleksis/apps/alsijil/frontend/components/coursebook/absences/AbsenceCreationForm.vue
+++ b/aleksis/apps/alsijil/frontend/components/coursebook/absences/AbsenceCreationForm.vue
@@ -4,10 +4,9 @@
       <v-row>
         <div aria-required="true" class="full-width">
           <!-- FIXME Vue 3: clear-on-select -->
-          <v-autocomplete
+          <person-field
+            :gql-query="gqlQuery"
             :label="$t('forms.labels.persons')"
-            :items="allPersons"
-            item-text="fullName"
             return-object
             multiple
             chips
@@ -18,7 +17,6 @@
               ])
             "
             :value="persons"
-            :loading="$apollo.queries.allPersons.loading"
             @input="$emit('persons', $event)"
           />
         </div>
@@ -77,7 +75,8 @@
 <script>
 import AbsenceReasonGroupSelect from "aleksis.apps.kolego/components/AbsenceReasonGroupSelect.vue";
 import DateTimeField from "aleksis.core/components/generic/forms/DateTimeField.vue";
-import { persons } from "./absenceCreation.graphql";
+import PersonField from "aleksis.core/components/generic/forms/PersonField.vue";
+import { gqlPersons } from "./absenceCreation.graphql";
 import formRulesMixin from "aleksis.core/mixins/formRulesMixin.js";
 import { DateTime } from "luxon";
 
@@ -86,6 +85,7 @@ export default {
   components: {
     AbsenceReasonGroupSelect,
     DateTimeField,
+    PersonField,
   },
   mixins: [formRulesMixin],
   emits: [
@@ -96,8 +96,10 @@ export default {
     "comment",
     "absence-reason",
   ],
-  apollo: {
-    allPersons: persons,
+  data() {
+    return {
+      gqlQuery: gqlPersons,
+    };
   },
   props: {
     persons: {
diff --git a/aleksis/apps/alsijil/frontend/components/coursebook/absences/absenceCreation.graphql b/aleksis/apps/alsijil/frontend/components/coursebook/absences/absenceCreation.graphql
index f7f6de02e930ee81e2f9bd6c54cbd354e319de3b..9ca58dd7bc5d58b269210d316c47641a952cdcba 100644
--- a/aleksis/apps/alsijil/frontend/components/coursebook/absences/absenceCreation.graphql
+++ b/aleksis/apps/alsijil/frontend/components/coursebook/absences/absenceCreation.graphql
@@ -1,8 +1,9 @@
 # Uses core persons query
-query persons {
-  allPersons: absenceCreationPersons {
+query gqlPersons {
+  items: absenceCreationPersons {
     id
     fullName
+    shortName
   }
 }