>>602
 そのくらいのデータ量だったら、値を全て読み込んでから
処理しちゃっても大丈夫/楽じゃないですかね。

use constant FIRSTFILENUM => 1;
use constant LASTFILENUM => 10;

my @data;    #$data[ファイル名の数字部分]->[列][行]
for (my $fileno = FIRSTFILENUM; $fileno <= LASTFILENUM ; $fileno++){
    open (FILE, "Sheet$fileno\.csv") or die;
    for(my $n = 0; <FILE>; $n++){
        chomp;
        $data[$fileno]->[$n] = [split (/,/)]
        };
    close (FILE) or die;
}

 こんな感じで、データを一気に読み込んで、あとは適当に
ループを回して足すなり引くなりするというのはどうでしょ?

my $sum;    #各ファイルの列ごとの和
for (my $col = 0;$col < 6; $col++){
    for (my $fileno = 1; $fileno <= 10; $fileno++){
        for(my $row = 0;$row < 8; $row++){
            $sum += $data[$fileno]->[$col][$row];
        }
    }
    print $col + 1 . ":$sum\n";
}

たとえばこんな感じで。