--- a/sheets/engine/Value.cpp
+++ b/sheets/engine/Value.cpp
@@ -268,15 +268,14 @@ Value::Value(bool b)
 }
 
 // create an integer value
-Value::Value(int64_t i)
+Value::Value(long long i)
     : d(Private::null())
 {
     d->type = Integer;
-    d->i = i;
+    d->i = static_cast<int64_t>(i);
     d->format = fmt_Number;
 }
 
-#if QT_POINTER_SIZE != 4
 // create an integer value
 Value::Value(int i)
     : d(Private::null())
@@ -285,18 +284,15 @@ Value::Value(int i)
     d->i = static_cast<int64_t>(i);
     d->format = fmt_Number;
 }
-#endif
 
-#ifndef Q_OS_WIN
 // create an integer value
-Value::Value(qsizetype i)
+Value::Value(long i)
     : d(Private::null())
 {
     d->type = Integer;
-    d->i = i;
+    d->i = static_cast<int64_t>(i);
     d->format = fmt_Number;
 }
-#endif
 
 // create a floating-point value
 Value::Value(double f)
--- a/sheets/engine/Value.h
+++ b/sheets/engine/Value.h
@@ -97,21 +97,17 @@ public:
     /**
      * Creates an integer value.
      */
-    explicit Value(int64_t i);
+    explicit Value(long long i);
 
-#ifndef Q_OS_WIN
     /**
      * Creates an integer value.
      */
-    explicit Value(qsizetype i);
-#endif
+    explicit Value(long i);
 
-#if QT_POINTER_SIZE != 4
     /**
      * Creates an integer value.
      */
     explicit Value(int i);
-#endif
 
     /**
      * Creates a floating-point value.
