Dann habe ich bei StringGrid.Row einfach was falsches erwartet - ich dachte das da immer die aktuelle Spalte drin steht - das was ich bei ARow rausbekomme.
Ersteres stimmt (fast): Es gibt die aktuelle Zeile (nicht Spalte) an, aber eben den Stand während des Selects und nicht danach. ARow hingegen gibt die Zeile der gerade selektierten Cell an, die sich natürlich von der aktuellen Zeile in StringGrid1.Row unterscheiden kann.