diff --git a/src/Model/SedimentLayer/SedimentLayer.py b/src/Model/SedimentLayer/SedimentLayer.py
index c4e926217ce4fb15ff8d86b9ce4c9467b878ff14..1bbcb6020f7bed042962874028c1d03269ea159e 100644
--- a/src/Model/SedimentLayer/SedimentLayer.py
+++ b/src/Model/SedimentLayer/SedimentLayer.py
@@ -284,7 +284,7 @@ class SedimentLayer(SQLSubModel):
         self.delete(els)
 
     def move_up(self, index):
-        if index < len(self._layers):
+        if index >= 0:
             next = index - 1
 
             l = self._layers
@@ -293,7 +293,7 @@ class SedimentLayer(SQLSubModel):
             self._status.modified()
 
     def move_down(self, index):
-        if index >= 0:
+        if index + 1 < len(self._layers):
             prev = index + 1
 
             l = self._layers
diff --git a/src/View/SedimentLayers/Edit/Table.py b/src/View/SedimentLayers/Edit/Table.py
index 47a870099ac720beaab549f00b9c71f0024b62d1..91a13b3fbae2bba566d0f61c7107ee188d99b579 100644
--- a/src/View/SedimentLayers/Edit/Table.py
+++ b/src/View/SedimentLayers/Edit/Table.py
@@ -134,7 +134,7 @@ class TableModel(QAbstractTableModel):
         self.layoutChanged.emit()
 
     def move_down(self, row, parent=QModelIndex()):
-        if row > len(self._sl):
+        if row + 1 >= len(self._sl):
             return
 
         target = row