some excel has different cell parse order, cause sheetRows invalid #2432

Closed
opened 2021-10-27 05:59:23 +00:00 by dnvyrn · 5 comments
dnvyrn commented 2021-10-27 05:59:23 +00:00 (Migrated from github.com)
  1. add console.log
    image

  2. normal excel output:
    { c: 0, r: 0 }
    { c: 1, r: 0 }
    { c: 2, r: 0 }
    { c: 3, r: 0 }
    { c: 4, r: 0 }
    { c: 5, r: 0 }
    { c: 6, r: 0 }
    { c: 0, r: 1 }
    { c: 1, r: 1 }
    { c: 2, r: 1 }
    { c: 3, r: 1 }
    { c: 4, r: 1 }
    { c: 5, r: 1 }
    { c: 6, r: 1 }
    { c: 0, r: 2 }
    { c: 1, r: 2 }
    { c: 2, r: 2 }
    { c: 3, r: 2 }
    { c: 4, r: 2 }
    { c: 5, r: 2 }
    { c: 6, r: 2 }
    { c: 0, r: 3 }
    { c: 1, r: 3 }
    { c: 2, r: 3 }
    { c: 3, r: 3 }
    { c: 4, r: 3 }
    { c: 5, r: 3 }
    { c: 6, r: 3 }
    { c: 0, r: 4 }
    { c: 1, r: 4 }
    { c: 2, r: 4 }
    { c: 3, r: 4 }
    { c: 4, r: 4 }
    { c: 5, r: 4 }
    { c: 6, r: 4 }
    { c: 0, r: 5 }
    { c: 1, r: 5 }
    { c: 2, r: 5 }
    { c: 3, r: 5 }
    { c: 4, r: 5 }
    { c: 5, r: 5 }
    { c: 6, r: 5 }
    { c: 0, r: 6 }
    { c: 1, r: 6 }
    { c: 2, r: 6 }
    { c: 3, r: 6 }
    { c: 4, r: 6 }
    { c: 5, r: 6 }
    { c: 6, r: 6 }
    { c: 0, r: 7 }
    { c: 1, r: 7 }
    { c: 2, r: 7 }
    { c: 3, r: 7 }
    { c: 4, r: 7 }
    { c: 5, r: 7 }
    { c: 6, r: 7 }
    { c: 0, r: 8 }
    { c: 1, r: 8 }
    { c: 2, r: 8 }
    { c: 3, r: 8 }
    { c: 4, r: 8 }
    { c: 5, r: 8 }
    { c: 6, r: 8 }
    { c: 0, r: 9 }
    { c: 1, r: 9 }
    { c: 2, r: 9 }
    { c: 3, r: 9 }
    { c: 4, r: 9 }
    { c: 5, r: 9 }
    { c: 6, r: 9 }
    { c: 0, r: 10 }
    { c: 1, r: 10 }
    { c: 2, r: 10 }
    { c: 3, r: 10 }
    { c: 4, r: 10 }
    { c: 5, r: 10 }
    { c: 6, r: 10 }
    { c: 0, r: 11 }
    { c: 1, r: 11 }
    { c: 2, r: 11 }
    { c: 3, r: 11 }
    { c: 4, r: 11 }
    { c: 5, r: 11 }
    { c: 6, r: 11 }
    { c: 0, r: 12 }
    { c: 1, r: 12 }
    { c: 2, r: 12 }
    { c: 3, r: 12 }
    { c: 4, r: 12 }
    { c: 5, r: 12 }
    { c: 6, r: 12 }
    { c: 0, r: 13 }
    { c: 1, r: 13 }
    { c: 2, r: 13 }
    { c: 3, r: 13 }
    { c: 4, r: 13 }
    { c: 5, r: 13 }
    { c: 6, r: 13 }
    { c: 0, r: 14 }
    { c: 1, r: 14 }
    { c: 2, r: 14 }
    { c: 3, r: 14 }
    { c: 4, r: 14 }
    { c: 5, r: 14 }
    { c: 6, r: 14 }
    { c: 0, r: 15 }
    { c: 1, r: 15 }
    { c: 2, r: 15 }
    { c: 3, r: 15 }
    { c: 4, r: 15 }
    { c: 5, r: 15 }
    { c: 6, r: 15 }
    { c: 0, r: 16 }
    { c: 1, r: 16 }
    { c: 2, r: 16 }
    { c: 3, r: 16 }
    { c: 4, r: 16 }
    { c: 5, r: 16 }
    { c: 6, r: 16 }
    { c: 0, r: 17 }
    { c: 1, r: 17 }
    { c: 2, r: 17 }
    { c: 3, r: 17 }
    { c: 4, r: 17 }
    { c: 5, r: 17 }
    { c: 6, r: 17 }
    { c: 0, r: 18 }
    { c: 1, r: 18 }
    { c: 2, r: 18 }
    { c: 3, r: 18 }
    { c: 4, r: 18 }
    { c: 5, r: 18 }
    { c: 6, r: 18 }
    { c: 0, r: 19 }
    { c: 1, r: 19 }
    { c: 2, r: 19 }
    { c: 3, r: 19 }
    { c: 4, r: 19 }
    { c: 5, r: 19 }
    { c: 6, r: 19 }
    { c: 0, r: 20 }
    { c: 1, r: 20 }
    { c: 2, r: 20 }
    { c: 3, r: 20 }
    { c: 4, r: 20 }
    { c: 5, r: 20 }
    { c: 6, r: 20 }
    { c: 0, r: 21 }
    { c: 1, r: 21 }
    { c: 2, r: 21 }
    { c: 3, r: 21 }
    { c: 4, r: 21 }
    { c: 5, r: 21 }
    { c: 6, r: 21 }
    { c: 0, r: 22 }
    { c: 1, r: 22 }
    { c: 2, r: 22 }
    { c: 3, r: 22 }
    { c: 4, r: 22 }
    { c: 5, r: 22 }
    { c: 6, r: 22 }
    { c: 0, r: 23 }
    { c: 1, r: 23 }
    { c: 2, r: 23 }
    { c: 3, r: 23 }
    { c: 4, r: 23 }
    { c: 5, r: 23 }
    { c: 6, r: 23 }
    { c: 0, r: 24 }
    { c: 1, r: 24 }
    { c: 2, r: 24 }
    { c: 3, r: 24 }
    { c: 4, r: 24 }
    { c: 5, r: 24 }
    { c: 6, r: 24 }
    { c: 0, r: 25 }
    { c: 1, r: 25 }
    { c: 2, r: 25 }
    { c: 3, r: 25 }
    { c: 4, r: 25 }
    { c: 5, r: 25 }
    { c: 6, r: 25 }
    { c: 0, r: 26 }
    { c: 1, r: 26 }
    { c: 2, r: 26 }
    { c: 3, r: 26 }
    { c: 4, r: 26 }
    { c: 5, r: 26 }
    { c: 6, r: 26 }
    { c: 0, r: 27 }
    { c: 1, r: 27 }
    { c: 2, r: 27 }
    { c: 3, r: 27 }
    { c: 4, r: 27 }
    { c: 5, r: 27 }
    { c: 6, r: 27 }
    { c: 0, r: 28 }
    { c: 1, r: 28 }
    { c: 2, r: 28 }
    { c: 3, r: 28 }
    { c: 4, r: 28 }
    { c: 5, r: 28 }
    { c: 6, r: 28 }
    { c: 0, r: 29 }
    { c: 1, r: 29 }
    { c: 2, r: 29 }
    { c: 3, r: 29 }
    { c: 4, r: 29 }
    { c: 5, r: 29 }
    { c: 6, r: 29 }
    { c: 0, r: 30 }
    { c: 1, r: 30 }
    { c: 2, r: 30 }
    { c: 3, r: 30 }
    { c: 4, r: 30 }
    { c: 5, r: 30 }
    { c: 6, r: 30 }
    { c: 0, r: 31 }
    { c: 1, r: 31 }
    { c: 2, r: 31 }
    { c: 3, r: 31 }
    { c: 4, r: 31 }
    { c: 5, r: 31 }
    { c: 6, r: 31 }
    { c: 0, r: 32 }
    { c: 1, r: 32 }
    { c: 2, r: 32 }
    { c: 3, r: 32 }
    { c: 4, r: 32 }
    { c: 5, r: 32 }
    { c: 6, r: 32 }
    { c: 0, r: 33 }
    { c: 1, r: 33 }
    { c: 2, r: 33 }
    { c: 3, r: 33 }
    { c: 4, r: 33 }
    { c: 5, r: 33 }
    { c: 6, r: 33 }
    { c: 0, r: 34 }
    { c: 1, r: 34 }
    { c: 2, r: 34 }
    { c: 3, r: 34 }
    { c: 4, r: 34 }
    { c: 5, r: 34 }
    { c: 6, r: 34 }
    { c: 0, r: 35 }
    { c: 1, r: 35 }
    { c: 2, r: 35 }
    { c: 3, r: 35 }
    { c: 4, r: 35 }
    { c: 5, r: 35 }
    { c: 6, r: 35 }
    { c: 0, r: 36 }
    { c: 1, r: 36 }
    { c: 2, r: 36 }
    { c: 3, r: 36 }
    { c: 4, r: 36 }
    { c: 5, r: 36 }
    { c: 6, r: 36 }
    { c: 0, r: 37 }
    { c: 1, r: 37 }
    { c: 2, r: 37 }
    { c: 3, r: 37 }
    { c: 4, r: 37 }
    { c: 5, r: 37 }
    { c: 6, r: 37 }
    { c: 0, r: 38 }
    { c: 1, r: 38 }
    { c: 2, r: 38 }
    { c: 3, r: 38 }
    { c: 4, r: 38 }
    { c: 5, r: 38 }
    { c: 6, r: 38 }
    { c: 0, r: 39 }
    { c: 1, r: 39 }
    { c: 2, r: 39 }
    { c: 3, r: 39 }
    { c: 4, r: 39 }
    { c: 5, r: 39 }
    { c: 6, r: 39 }
    { c: 0, r: 40 }
    { c: 2, r: 40 }
    { c: 3, r: 40 }
    { c: 4, r: 40 }
    { c: 5, r: 40 }
    { c: 6, r: 40 }

  3. problem excel output:
    { c: 0, r: 0 }
    { c: 0, r: 1 }
    { c: 0, r: 2 }
    { c: 0, r: 3 }
    { c: 0, r: 4 }
    { c: 0, r: 5 }
    { c: 0, r: 6 }
    { c: 0, r: 7 }
    { c: 0, r: 8 }
    { c: 0, r: 9 }
    { c: 0, r: 10 }
    { c: 0, r: 11 }
    { c: 0, r: 12 }
    { c: 0, r: 13 }
    { c: 0, r: 14 }
    { c: 0, r: 15 }
    { c: 0, r: 16 }
    { c: 0, r: 17 }
    { c: 0, r: 18 }
    { c: 0, r: 19 }
    { c: 0, r: 20 }
    { c: 0, r: 21 }
    { c: 0, r: 22 }
    { c: 0, r: 23 }
    { c: 0, r: 24 }
    { c: 0, r: 25 }
    { c: 0, r: 26 }
    { c: 0, r: 27 }
    { c: 0, r: 28 }
    { c: 0, r: 29 }
    { c: 0, r: 30 }
    { c: 0, r: 31 }
    { c: 0, r: 32 }
    { c: 0, r: 33 }
    { c: 0, r: 34 }
    { c: 0, r: 35 }
    { c: 0, r: 36 }
    { c: 0, r: 37 }
    { c: 0, r: 38 }
    { c: 0, r: 39 }
    { c: 0, r: 40 }
    { c: 1, r: 0 }
    { c: 1, r: 1 }
    { c: 1, r: 2 }
    { c: 1, r: 3 }
    { c: 1, r: 4 }
    { c: 1, r: 5 }
    { c: 1, r: 6 }
    { c: 1, r: 7 }
    { c: 1, r: 8 }
    { c: 1, r: 9 }
    { c: 1, r: 10 }
    { c: 1, r: 11 }
    { c: 1, r: 12 }
    { c: 1, r: 13 }
    { c: 1, r: 14 }
    { c: 1, r: 15 }
    { c: 1, r: 16 }
    { c: 1, r: 17 }
    { c: 1, r: 18 }
    { c: 1, r: 19 }
    { c: 1, r: 20 }
    { c: 1, r: 21 }
    { c: 1, r: 22 }
    { c: 1, r: 23 }
    { c: 1, r: 24 }
    { c: 1, r: 25 }
    { c: 1, r: 26 }
    { c: 1, r: 27 }
    { c: 1, r: 28 }
    { c: 1, r: 29 }
    { c: 1, r: 30 }
    { c: 1, r: 31 }
    { c: 1, r: 32 }
    { c: 1, r: 33 }
    { c: 1, r: 34 }
    { c: 1, r: 35 }
    { c: 1, r: 36 }
    { c: 1, r: 37 }
    { c: 1, r: 38 }
    { c: 1, r: 39 }
    { c: 2, r: 0 }
    { c: 2, r: 1 }
    { c: 2, r: 2 }
    { c: 2, r: 3 }
    { c: 2, r: 4 }
    { c: 2, r: 5 }
    { c: 2, r: 6 }
    { c: 2, r: 7 }
    { c: 2, r: 8 }
    { c: 2, r: 9 }
    { c: 2, r: 10 }
    { c: 2, r: 11 }
    { c: 2, r: 12 }
    { c: 2, r: 13 }
    { c: 2, r: 14 }
    { c: 2, r: 15 }
    { c: 2, r: 16 }
    { c: 2, r: 17 }
    { c: 2, r: 18 }
    { c: 2, r: 19 }
    { c: 2, r: 20 }
    { c: 2, r: 21 }
    { c: 2, r: 22 }
    { c: 2, r: 23 }
    { c: 2, r: 24 }
    { c: 2, r: 25 }
    { c: 2, r: 26 }
    { c: 2, r: 27 }
    { c: 2, r: 28 }
    { c: 2, r: 29 }
    { c: 2, r: 30 }
    { c: 2, r: 31 }
    { c: 2, r: 32 }
    { c: 2, r: 33 }
    { c: 2, r: 34 }
    { c: 2, r: 35 }
    { c: 2, r: 36 }
    { c: 2, r: 37 }
    { c: 2, r: 38 }
    { c: 2, r: 39 }
    { c: 2, r: 40 }
    { c: 3, r: 0 }
    { c: 3, r: 1 }
    { c: 3, r: 2 }
    { c: 3, r: 3 }
    { c: 3, r: 4 }
    { c: 3, r: 5 }
    { c: 3, r: 6 }
    { c: 3, r: 7 }
    { c: 3, r: 8 }
    { c: 3, r: 9 }
    { c: 3, r: 10 }
    { c: 3, r: 11 }
    { c: 3, r: 12 }
    { c: 3, r: 13 }
    { c: 3, r: 14 }
    { c: 3, r: 15 }
    { c: 3, r: 16 }
    { c: 3, r: 17 }
    { c: 3, r: 18 }
    { c: 3, r: 19 }
    { c: 3, r: 20 }
    { c: 3, r: 21 }
    { c: 3, r: 22 }
    { c: 3, r: 23 }
    { c: 3, r: 24 }
    { c: 3, r: 25 }
    { c: 3, r: 26 }
    { c: 3, r: 27 }
    { c: 3, r: 28 }
    { c: 3, r: 29 }
    { c: 3, r: 30 }
    { c: 3, r: 31 }
    { c: 3, r: 32 }
    { c: 3, r: 33 }
    { c: 3, r: 34 }
    { c: 3, r: 35 }
    { c: 3, r: 36 }
    { c: 3, r: 37 }
    { c: 3, r: 38 }
    { c: 3, r: 39 }
    { c: 3, r: 40 }
    { c: 4, r: 0 }
    { c: 4, r: 1 }
    { c: 4, r: 2 }
    { c: 4, r: 3 }
    { c: 4, r: 4 }
    { c: 4, r: 5 }
    { c: 4, r: 6 }
    { c: 4, r: 7 }
    { c: 4, r: 8 }
    { c: 4, r: 9 }
    { c: 4, r: 10 }
    { c: 4, r: 11 }
    { c: 4, r: 12 }
    { c: 4, r: 13 }
    { c: 4, r: 14 }
    { c: 4, r: 15 }
    { c: 4, r: 16 }
    { c: 4, r: 17 }
    { c: 4, r: 18 }
    { c: 4, r: 19 }
    { c: 4, r: 20 }
    { c: 4, r: 21 }
    { c: 4, r: 22 }
    { c: 4, r: 23 }
    { c: 4, r: 24 }
    { c: 4, r: 25 }
    { c: 4, r: 26 }
    { c: 4, r: 27 }
    { c: 4, r: 28 }
    { c: 4, r: 29 }
    { c: 4, r: 30 }
    { c: 4, r: 31 }
    { c: 4, r: 32 }
    { c: 4, r: 33 }
    { c: 4, r: 34 }
    { c: 4, r: 35 }
    { c: 4, r: 36 }
    { c: 4, r: 37 }
    { c: 4, r: 38 }
    { c: 4, r: 39 }
    { c: 4, r: 40 }
    { c: 5, r: 0 }
    { c: 5, r: 1 }
    { c: 5, r: 2 }
    { c: 5, r: 3 }
    { c: 5, r: 4 }
    { c: 5, r: 5 }
    { c: 5, r: 6 }
    { c: 5, r: 7 }
    { c: 5, r: 8 }
    { c: 5, r: 9 }
    { c: 5, r: 10 }
    { c: 5, r: 11 }
    { c: 5, r: 12 }
    { c: 5, r: 13 }
    { c: 5, r: 14 }
    { c: 5, r: 15 }
    { c: 5, r: 16 }
    { c: 5, r: 17 }
    { c: 5, r: 18 }
    { c: 5, r: 19 }
    { c: 5, r: 20 }
    { c: 5, r: 21 }
    { c: 5, r: 22 }
    { c: 5, r: 23 }
    { c: 5, r: 24 }
    { c: 5, r: 25 }
    { c: 5, r: 26 }
    { c: 5, r: 27 }
    { c: 5, r: 28 }
    { c: 5, r: 29 }
    { c: 5, r: 30 }
    { c: 5, r: 31 }
    { c: 5, r: 32 }
    { c: 5, r: 33 }
    { c: 5, r: 34 }
    { c: 5, r: 35 }
    { c: 5, r: 36 }
    { c: 5, r: 37 }
    { c: 5, r: 38 }
    { c: 5, r: 39 }
    { c: 5, r: 40 }
    { c: 6, r: 0 }
    { c: 6, r: 1 }
    { c: 6, r: 2 }
    { c: 6, r: 3 }
    { c: 6, r: 4 }
    { c: 6, r: 5 }
    { c: 6, r: 6 }
    { c: 6, r: 7 }
    { c: 6, r: 8 }
    { c: 6, r: 9 }
    { c: 6, r: 10 }
    { c: 6, r: 11 }
    { c: 6, r: 12 }
    { c: 6, r: 13 }
    { c: 6, r: 14 }
    { c: 6, r: 15 }
    { c: 6, r: 16 }
    { c: 6, r: 17 }
    { c: 6, r: 18 }
    { c: 6, r: 19 }
    { c: 6, r: 20 }
    { c: 6, r: 21 }
    { c: 6, r: 22 }
    { c: 6, r: 23 }
    { c: 6, r: 24 }
    { c: 6, r: 25 }
    { c: 6, r: 26 }
    { c: 6, r: 27 }
    { c: 6, r: 28 }
    { c: 6, r: 29 }
    { c: 6, r: 30 }
    { c: 6, r: 31 }
    { c: 6, r: 32 }
    { c: 6, r: 33 }
    { c: 6, r: 34 }
    { c: 6, r: 35 }
    { c: 6, r: 36 }
    { c: 6, r: 37 }
    { c: 6, r: 38 }
    { c: 6, r: 39 }
    { c: 6, r: 40 }

So the sheetRows just parse A1.

1. add `console.log` ![image](https://user-images.githubusercontent.com/31705329/139007983-8908399a-3995-4f48-b86e-9931aed872f3.png) 2. normal excel output: { c: 0, r: 0 } { c: 1, r: 0 } { c: 2, r: 0 } { c: 3, r: 0 } { c: 4, r: 0 } { c: 5, r: 0 } { c: 6, r: 0 } { c: 0, r: 1 } { c: 1, r: 1 } { c: 2, r: 1 } { c: 3, r: 1 } { c: 4, r: 1 } { c: 5, r: 1 } { c: 6, r: 1 } { c: 0, r: 2 } { c: 1, r: 2 } { c: 2, r: 2 } { c: 3, r: 2 } { c: 4, r: 2 } { c: 5, r: 2 } { c: 6, r: 2 } { c: 0, r: 3 } { c: 1, r: 3 } { c: 2, r: 3 } { c: 3, r: 3 } { c: 4, r: 3 } { c: 5, r: 3 } { c: 6, r: 3 } { c: 0, r: 4 } { c: 1, r: 4 } { c: 2, r: 4 } { c: 3, r: 4 } { c: 4, r: 4 } { c: 5, r: 4 } { c: 6, r: 4 } { c: 0, r: 5 } { c: 1, r: 5 } { c: 2, r: 5 } { c: 3, r: 5 } { c: 4, r: 5 } { c: 5, r: 5 } { c: 6, r: 5 } { c: 0, r: 6 } { c: 1, r: 6 } { c: 2, r: 6 } { c: 3, r: 6 } { c: 4, r: 6 } { c: 5, r: 6 } { c: 6, r: 6 } { c: 0, r: 7 } { c: 1, r: 7 } { c: 2, r: 7 } { c: 3, r: 7 } { c: 4, r: 7 } { c: 5, r: 7 } { c: 6, r: 7 } { c: 0, r: 8 } { c: 1, r: 8 } { c: 2, r: 8 } { c: 3, r: 8 } { c: 4, r: 8 } { c: 5, r: 8 } { c: 6, r: 8 } { c: 0, r: 9 } { c: 1, r: 9 } { c: 2, r: 9 } { c: 3, r: 9 } { c: 4, r: 9 } { c: 5, r: 9 } { c: 6, r: 9 } { c: 0, r: 10 } { c: 1, r: 10 } { c: 2, r: 10 } { c: 3, r: 10 } { c: 4, r: 10 } { c: 5, r: 10 } { c: 6, r: 10 } { c: 0, r: 11 } { c: 1, r: 11 } { c: 2, r: 11 } { c: 3, r: 11 } { c: 4, r: 11 } { c: 5, r: 11 } { c: 6, r: 11 } { c: 0, r: 12 } { c: 1, r: 12 } { c: 2, r: 12 } { c: 3, r: 12 } { c: 4, r: 12 } { c: 5, r: 12 } { c: 6, r: 12 } { c: 0, r: 13 } { c: 1, r: 13 } { c: 2, r: 13 } { c: 3, r: 13 } { c: 4, r: 13 } { c: 5, r: 13 } { c: 6, r: 13 } { c: 0, r: 14 } { c: 1, r: 14 } { c: 2, r: 14 } { c: 3, r: 14 } { c: 4, r: 14 } { c: 5, r: 14 } { c: 6, r: 14 } { c: 0, r: 15 } { c: 1, r: 15 } { c: 2, r: 15 } { c: 3, r: 15 } { c: 4, r: 15 } { c: 5, r: 15 } { c: 6, r: 15 } { c: 0, r: 16 } { c: 1, r: 16 } { c: 2, r: 16 } { c: 3, r: 16 } { c: 4, r: 16 } { c: 5, r: 16 } { c: 6, r: 16 } { c: 0, r: 17 } { c: 1, r: 17 } { c: 2, r: 17 } { c: 3, r: 17 } { c: 4, r: 17 } { c: 5, r: 17 } { c: 6, r: 17 } { c: 0, r: 18 } { c: 1, r: 18 } { c: 2, r: 18 } { c: 3, r: 18 } { c: 4, r: 18 } { c: 5, r: 18 } { c: 6, r: 18 } { c: 0, r: 19 } { c: 1, r: 19 } { c: 2, r: 19 } { c: 3, r: 19 } { c: 4, r: 19 } { c: 5, r: 19 } { c: 6, r: 19 } { c: 0, r: 20 } { c: 1, r: 20 } { c: 2, r: 20 } { c: 3, r: 20 } { c: 4, r: 20 } { c: 5, r: 20 } { c: 6, r: 20 } { c: 0, r: 21 } { c: 1, r: 21 } { c: 2, r: 21 } { c: 3, r: 21 } { c: 4, r: 21 } { c: 5, r: 21 } { c: 6, r: 21 } { c: 0, r: 22 } { c: 1, r: 22 } { c: 2, r: 22 } { c: 3, r: 22 } { c: 4, r: 22 } { c: 5, r: 22 } { c: 6, r: 22 } { c: 0, r: 23 } { c: 1, r: 23 } { c: 2, r: 23 } { c: 3, r: 23 } { c: 4, r: 23 } { c: 5, r: 23 } { c: 6, r: 23 } { c: 0, r: 24 } { c: 1, r: 24 } { c: 2, r: 24 } { c: 3, r: 24 } { c: 4, r: 24 } { c: 5, r: 24 } { c: 6, r: 24 } { c: 0, r: 25 } { c: 1, r: 25 } { c: 2, r: 25 } { c: 3, r: 25 } { c: 4, r: 25 } { c: 5, r: 25 } { c: 6, r: 25 } { c: 0, r: 26 } { c: 1, r: 26 } { c: 2, r: 26 } { c: 3, r: 26 } { c: 4, r: 26 } { c: 5, r: 26 } { c: 6, r: 26 } { c: 0, r: 27 } { c: 1, r: 27 } { c: 2, r: 27 } { c: 3, r: 27 } { c: 4, r: 27 } { c: 5, r: 27 } { c: 6, r: 27 } { c: 0, r: 28 } { c: 1, r: 28 } { c: 2, r: 28 } { c: 3, r: 28 } { c: 4, r: 28 } { c: 5, r: 28 } { c: 6, r: 28 } { c: 0, r: 29 } { c: 1, r: 29 } { c: 2, r: 29 } { c: 3, r: 29 } { c: 4, r: 29 } { c: 5, r: 29 } { c: 6, r: 29 } { c: 0, r: 30 } { c: 1, r: 30 } { c: 2, r: 30 } { c: 3, r: 30 } { c: 4, r: 30 } { c: 5, r: 30 } { c: 6, r: 30 } { c: 0, r: 31 } { c: 1, r: 31 } { c: 2, r: 31 } { c: 3, r: 31 } { c: 4, r: 31 } { c: 5, r: 31 } { c: 6, r: 31 } { c: 0, r: 32 } { c: 1, r: 32 } { c: 2, r: 32 } { c: 3, r: 32 } { c: 4, r: 32 } { c: 5, r: 32 } { c: 6, r: 32 } { c: 0, r: 33 } { c: 1, r: 33 } { c: 2, r: 33 } { c: 3, r: 33 } { c: 4, r: 33 } { c: 5, r: 33 } { c: 6, r: 33 } { c: 0, r: 34 } { c: 1, r: 34 } { c: 2, r: 34 } { c: 3, r: 34 } { c: 4, r: 34 } { c: 5, r: 34 } { c: 6, r: 34 } { c: 0, r: 35 } { c: 1, r: 35 } { c: 2, r: 35 } { c: 3, r: 35 } { c: 4, r: 35 } { c: 5, r: 35 } { c: 6, r: 35 } { c: 0, r: 36 } { c: 1, r: 36 } { c: 2, r: 36 } { c: 3, r: 36 } { c: 4, r: 36 } { c: 5, r: 36 } { c: 6, r: 36 } { c: 0, r: 37 } { c: 1, r: 37 } { c: 2, r: 37 } { c: 3, r: 37 } { c: 4, r: 37 } { c: 5, r: 37 } { c: 6, r: 37 } { c: 0, r: 38 } { c: 1, r: 38 } { c: 2, r: 38 } { c: 3, r: 38 } { c: 4, r: 38 } { c: 5, r: 38 } { c: 6, r: 38 } { c: 0, r: 39 } { c: 1, r: 39 } { c: 2, r: 39 } { c: 3, r: 39 } { c: 4, r: 39 } { c: 5, r: 39 } { c: 6, r: 39 } { c: 0, r: 40 } { c: 2, r: 40 } { c: 3, r: 40 } { c: 4, r: 40 } { c: 5, r: 40 } { c: 6, r: 40 } 3. problem excel output: { c: 0, r: 0 } { c: 0, r: 1 } { c: 0, r: 2 } { c: 0, r: 3 } { c: 0, r: 4 } { c: 0, r: 5 } { c: 0, r: 6 } { c: 0, r: 7 } { c: 0, r: 8 } { c: 0, r: 9 } { c: 0, r: 10 } { c: 0, r: 11 } { c: 0, r: 12 } { c: 0, r: 13 } { c: 0, r: 14 } { c: 0, r: 15 } { c: 0, r: 16 } { c: 0, r: 17 } { c: 0, r: 18 } { c: 0, r: 19 } { c: 0, r: 20 } { c: 0, r: 21 } { c: 0, r: 22 } { c: 0, r: 23 } { c: 0, r: 24 } { c: 0, r: 25 } { c: 0, r: 26 } { c: 0, r: 27 } { c: 0, r: 28 } { c: 0, r: 29 } { c: 0, r: 30 } { c: 0, r: 31 } { c: 0, r: 32 } { c: 0, r: 33 } { c: 0, r: 34 } { c: 0, r: 35 } { c: 0, r: 36 } { c: 0, r: 37 } { c: 0, r: 38 } { c: 0, r: 39 } { c: 0, r: 40 } { c: 1, r: 0 } { c: 1, r: 1 } { c: 1, r: 2 } { c: 1, r: 3 } { c: 1, r: 4 } { c: 1, r: 5 } { c: 1, r: 6 } { c: 1, r: 7 } { c: 1, r: 8 } { c: 1, r: 9 } { c: 1, r: 10 } { c: 1, r: 11 } { c: 1, r: 12 } { c: 1, r: 13 } { c: 1, r: 14 } { c: 1, r: 15 } { c: 1, r: 16 } { c: 1, r: 17 } { c: 1, r: 18 } { c: 1, r: 19 } { c: 1, r: 20 } { c: 1, r: 21 } { c: 1, r: 22 } { c: 1, r: 23 } { c: 1, r: 24 } { c: 1, r: 25 } { c: 1, r: 26 } { c: 1, r: 27 } { c: 1, r: 28 } { c: 1, r: 29 } { c: 1, r: 30 } { c: 1, r: 31 } { c: 1, r: 32 } { c: 1, r: 33 } { c: 1, r: 34 } { c: 1, r: 35 } { c: 1, r: 36 } { c: 1, r: 37 } { c: 1, r: 38 } { c: 1, r: 39 } { c: 2, r: 0 } { c: 2, r: 1 } { c: 2, r: 2 } { c: 2, r: 3 } { c: 2, r: 4 } { c: 2, r: 5 } { c: 2, r: 6 } { c: 2, r: 7 } { c: 2, r: 8 } { c: 2, r: 9 } { c: 2, r: 10 } { c: 2, r: 11 } { c: 2, r: 12 } { c: 2, r: 13 } { c: 2, r: 14 } { c: 2, r: 15 } { c: 2, r: 16 } { c: 2, r: 17 } { c: 2, r: 18 } { c: 2, r: 19 } { c: 2, r: 20 } { c: 2, r: 21 } { c: 2, r: 22 } { c: 2, r: 23 } { c: 2, r: 24 } { c: 2, r: 25 } { c: 2, r: 26 } { c: 2, r: 27 } { c: 2, r: 28 } { c: 2, r: 29 } { c: 2, r: 30 } { c: 2, r: 31 } { c: 2, r: 32 } { c: 2, r: 33 } { c: 2, r: 34 } { c: 2, r: 35 } { c: 2, r: 36 } { c: 2, r: 37 } { c: 2, r: 38 } { c: 2, r: 39 } { c: 2, r: 40 } { c: 3, r: 0 } { c: 3, r: 1 } { c: 3, r: 2 } { c: 3, r: 3 } { c: 3, r: 4 } { c: 3, r: 5 } { c: 3, r: 6 } { c: 3, r: 7 } { c: 3, r: 8 } { c: 3, r: 9 } { c: 3, r: 10 } { c: 3, r: 11 } { c: 3, r: 12 } { c: 3, r: 13 } { c: 3, r: 14 } { c: 3, r: 15 } { c: 3, r: 16 } { c: 3, r: 17 } { c: 3, r: 18 } { c: 3, r: 19 } { c: 3, r: 20 } { c: 3, r: 21 } { c: 3, r: 22 } { c: 3, r: 23 } { c: 3, r: 24 } { c: 3, r: 25 } { c: 3, r: 26 } { c: 3, r: 27 } { c: 3, r: 28 } { c: 3, r: 29 } { c: 3, r: 30 } { c: 3, r: 31 } { c: 3, r: 32 } { c: 3, r: 33 } { c: 3, r: 34 } { c: 3, r: 35 } { c: 3, r: 36 } { c: 3, r: 37 } { c: 3, r: 38 } { c: 3, r: 39 } { c: 3, r: 40 } { c: 4, r: 0 } { c: 4, r: 1 } { c: 4, r: 2 } { c: 4, r: 3 } { c: 4, r: 4 } { c: 4, r: 5 } { c: 4, r: 6 } { c: 4, r: 7 } { c: 4, r: 8 } { c: 4, r: 9 } { c: 4, r: 10 } { c: 4, r: 11 } { c: 4, r: 12 } { c: 4, r: 13 } { c: 4, r: 14 } { c: 4, r: 15 } { c: 4, r: 16 } { c: 4, r: 17 } { c: 4, r: 18 } { c: 4, r: 19 } { c: 4, r: 20 } { c: 4, r: 21 } { c: 4, r: 22 } { c: 4, r: 23 } { c: 4, r: 24 } { c: 4, r: 25 } { c: 4, r: 26 } { c: 4, r: 27 } { c: 4, r: 28 } { c: 4, r: 29 } { c: 4, r: 30 } { c: 4, r: 31 } { c: 4, r: 32 } { c: 4, r: 33 } { c: 4, r: 34 } { c: 4, r: 35 } { c: 4, r: 36 } { c: 4, r: 37 } { c: 4, r: 38 } { c: 4, r: 39 } { c: 4, r: 40 } { c: 5, r: 0 } { c: 5, r: 1 } { c: 5, r: 2 } { c: 5, r: 3 } { c: 5, r: 4 } { c: 5, r: 5 } { c: 5, r: 6 } { c: 5, r: 7 } { c: 5, r: 8 } { c: 5, r: 9 } { c: 5, r: 10 } { c: 5, r: 11 } { c: 5, r: 12 } { c: 5, r: 13 } { c: 5, r: 14 } { c: 5, r: 15 } { c: 5, r: 16 } { c: 5, r: 17 } { c: 5, r: 18 } { c: 5, r: 19 } { c: 5, r: 20 } { c: 5, r: 21 } { c: 5, r: 22 } { c: 5, r: 23 } { c: 5, r: 24 } { c: 5, r: 25 } { c: 5, r: 26 } { c: 5, r: 27 } { c: 5, r: 28 } { c: 5, r: 29 } { c: 5, r: 30 } { c: 5, r: 31 } { c: 5, r: 32 } { c: 5, r: 33 } { c: 5, r: 34 } { c: 5, r: 35 } { c: 5, r: 36 } { c: 5, r: 37 } { c: 5, r: 38 } { c: 5, r: 39 } { c: 5, r: 40 } { c: 6, r: 0 } { c: 6, r: 1 } { c: 6, r: 2 } { c: 6, r: 3 } { c: 6, r: 4 } { c: 6, r: 5 } { c: 6, r: 6 } { c: 6, r: 7 } { c: 6, r: 8 } { c: 6, r: 9 } { c: 6, r: 10 } { c: 6, r: 11 } { c: 6, r: 12 } { c: 6, r: 13 } { c: 6, r: 14 } { c: 6, r: 15 } { c: 6, r: 16 } { c: 6, r: 17 } { c: 6, r: 18 } { c: 6, r: 19 } { c: 6, r: 20 } { c: 6, r: 21 } { c: 6, r: 22 } { c: 6, r: 23 } { c: 6, r: 24 } { c: 6, r: 25 } { c: 6, r: 26 } { c: 6, r: 27 } { c: 6, r: 28 } { c: 6, r: 29 } { c: 6, r: 30 } { c: 6, r: 31 } { c: 6, r: 32 } { c: 6, r: 33 } { c: 6, r: 34 } { c: 6, r: 35 } { c: 6, r: 36 } { c: 6, r: 37 } { c: 6, r: 38 } { c: 6, r: 39 } { c: 6, r: 40 } So the `sheetRows` just parse `A1`.
SheetJSDev commented 2021-10-27 06:02:45 +00:00 (Migrated from github.com)

Can you share the original file? If it is small, you can drag-drop into the GH issue comment window. If it is large, email hello@sheetjs.com

Can you share the original file? If it is small, you can drag-drop into the GH issue comment window. If it is large, email hello@sheetjs.com
dnvyrn commented 2021-10-27 06:04:59 +00:00 (Migrated from github.com)

problem.xls

I change 76_xls.js line:138
cell_valid = options.sheetRows && cell.r >= options.sheetRows; , then it works well.

[problem.xls](https://github.com/SheetJS/sheetjs/files/7423566/problem.xls) I change `76_xls.js line:138`: `cell_valid = options.sheetRows && cell.r >= options.sheetRows; `, then it works well.
SheetJSDev commented 2021-10-27 06:15:38 +00:00 (Migrated from github.com)

Thanks for sharing! That's really cool.

That entire cell_valid check can be factored out. Feel free to submit as a PR:

diff --git a/bits/76_xls.js b/bits/76_xls.js
index aa9d87c..b2b5916 100644
--- a/bits/76_xls.js
+++ b/bits/76_xls.js
@@ -115,7 +115,6 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ {
        var arrayf/*:Array<[Range, string]>*/ = [];
        var temp_val/*:Cell*/;
        var country;
-       var cell_valid = true;
        var XFs = []; /* XF records */
        var palette/*:Array<[number, number, number]>*/ = [];
        var Workbook/*:WBWBProps*/ = ({ Sheets:[], WBProps:{date1904:false}, Views:[{}] }/*:any*/), wsprops = {};
@@ -135,8 +134,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ {
        };
        var addcell = function addcell(cell/*:any*/, line/*:any*/, options/*:any*/) {
                if(file_depth > 1) return;
-               if(options.sheetRows && cell.r >= options.sheetRows) cell_valid = false;
-               if(!cell_valid) return;
+               if(options.sheetRows && cell.r >= options.sheetRows) return;
                if(options.cellStyles && line.XF && line.XF.data) process_cell_style(cell, line, options);
                delete line.ixfe; delete line.XF;
                lastcell = cell;
@@ -365,7 +363,6 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ {
                                        if(val.BIFFVer == 0 && val.dt == 0x1000) { opts.biff = 5; seen_codepage = true; set_cp(opts.codepage = 28591); }
                                        if(opts.biff == 8 && val.BIFFVer == 0 && val.dt == 16) opts.biff = 2;
                                        if(file_depth++) break;
-                                       cell_valid = true;
                                        out = ((options.dense ? [] : {})/*:any*/);
 
                                        if(opts.biff < 8 && !seen_codepage) { seen_codepage = true; set_cp(opts.codepage = options.codepage || 1252); }
@@ -462,7 +459,6 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ {
                                        }
                                } break;
                                case 'ShrFmla': {
-                                       if(!cell_valid) break;
                                        if(!options.cellFormula) break;
                                        if(last_cell) {
                                                /* TODO: capture range */
Thanks for sharing! That's really cool. That entire `cell_valid` check can be factored out. Feel free to submit as a PR: ```diff diff --git a/bits/76_xls.js b/bits/76_xls.js index aa9d87c..b2b5916 100644 --- a/bits/76_xls.js +++ b/bits/76_xls.js @@ -115,7 +115,6 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { var arrayf/*:Array<[Range, string]>*/ = []; var temp_val/*:Cell*/; var country; - var cell_valid = true; var XFs = []; /* XF records */ var palette/*:Array<[number, number, number]>*/ = []; var Workbook/*:WBWBProps*/ = ({ Sheets:[], WBProps:{date1904:false}, Views:[{}] }/*:any*/), wsprops = {}; @@ -135,8 +134,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { }; var addcell = function addcell(cell/*:any*/, line/*:any*/, options/*:any*/) { if(file_depth > 1) return; - if(options.sheetRows && cell.r >= options.sheetRows) cell_valid = false; - if(!cell_valid) return; + if(options.sheetRows && cell.r >= options.sheetRows) return; if(options.cellStyles && line.XF && line.XF.data) process_cell_style(cell, line, options); delete line.ixfe; delete line.XF; lastcell = cell; @@ -365,7 +363,6 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { if(val.BIFFVer == 0 && val.dt == 0x1000) { opts.biff = 5; seen_codepage = true; set_cp(opts.codepage = 28591); } if(opts.biff == 8 && val.BIFFVer == 0 && val.dt == 16) opts.biff = 2; if(file_depth++) break; - cell_valid = true; out = ((options.dense ? [] : {})/*:any*/); if(opts.biff < 8 && !seen_codepage) { seen_codepage = true; set_cp(opts.codepage = options.codepage || 1252); } @@ -462,7 +459,6 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { } } break; case 'ShrFmla': { - if(!cell_valid) break; if(!options.cellFormula) break; if(last_cell) { /* TODO: capture range */ ```
dnvyrn commented 2021-10-27 06:43:22 +00:00 (Migrated from github.com)

When will it be updated?

When will it be updated?
reviewher commented 2022-01-12 04:48:59 +00:00 (Migrated from github.com)

This was published in 0.17.4

This was published in 0.17.4
Sign in to join this conversation.
No Milestone
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: sheetjs/sheetjs#2432
No description provided.