diff --git a/RhSolutions.AddIn/Services/GuessReader.cs b/RhSolutions.AddIn/Services/GuessReader.cs index 3824950..09bb5a0 100644 --- a/RhSolutions.AddIn/Services/GuessReader.cs +++ b/RhSolutions.AddIn/Services/GuessReader.cs @@ -47,19 +47,21 @@ public class GuessReader : IReader } if (currentIndex > productColumnIndex) { - if (IsAmountColumn(range.Columns[currentIndex++])) + if (IsAmountColumn(range.Columns[currentIndex])) { - amountColumnIndex = currentIndex - 1; + amountColumnIndex = currentIndex; break; } + else currentIndex++; } else { - if (IsAmountColumn(range.Columns[currentIndex--])) + if (IsAmountColumn(range.Columns[currentIndex])) { - amountColumnIndex = currentIndex + 1; + amountColumnIndex = currentIndex; break; } + else currentIndex--; } } @@ -111,6 +113,7 @@ public class GuessReader : IReader { int successCounter = 0; var cells = column.Value2; + double maxValue = 30000; if (cells == null) { @@ -125,25 +128,30 @@ public class GuessReader : IReader continue; } - double? value = currentCell as double?; + double? value = currentCell as double?; if (value == null || value == 0) { continue; } - if (value > 30000) + if (value > maxValue) { return false; } - - if (++successCounter > 3) + + if (column.Rows.Count == 1) + { + return true; + } + + if (++successCounter > 1) { return true; } } - return successCounter > 0; + return successCounter > 1; } private Dictionary GetDictionaryFromColumns(Range productColumn, Range amountColumn)