Поиск номера строки в таблице по переменной

Регистрация
26.05.2020
Сообщения
461
Благодарностей
164
Баллы
43
Сам спросил, сам и отвечу, как обычно...

C#:
// берем из переменной текст, по которому будут искаться номера строк
var textContains = project.Variables["peremennaya"].Value;
// задаем таблицу, в которой будем искать
var sourceTable = project.Tables["Таблица1"];

// Номер столбца, по которому ищем (отсчет от 0!!!)
var searchColIndex = 2;

// Ищем в каждой строчке в таблице
for(int rowIndex = 0; rowIndex < sourceTable.RowCount; rowIndex++)
{
    // Читаем строку из таблицы
    var cells = sourceTable.GetRow(rowIndex).ToArray();
   // if (cells[searchColIndex].Contains(textContains)) // ищет по логике "содержит"
    if (cells[searchColIndex] == textContains) // ищет по логике "равно"
    {
        project.Lists["Список"].Add(rowIndex + 1); // если отмечено "Первая строка - Заголовки" в настройках таблицы
        // project.Lists["Список"].Add(rowIndex); // если НЕ отмечено "Первая строка - Заголовки" в настройках таблицы
    }
}
В сниппеты на гитхабе предложил данный код
 
Регистрация
26.05.2020
Сообщения
461
Благодарностей
164
Баллы
43
Люди знающие, подскажите, а как сделать условие, чтоб проверка была на непустые ячейки?

Делал так
if (cells[searchColIndex] != '')
if (cells[searchColIndex] != "")
if (cells[searchColIndex] != null)
if (string.IsNullOrEmpty(cells[searchColIndex]))
не работает. Перепробовал уже кучу всего, ничего не работает...
PS: в коде не але совсем...
PPS: В-общем, вариант 2 и 4 рабочие, но мистика в том, что столбцы код "видит" только с нулевого и вплоть до 6. Седьмой и далее столбцы не видятся кодом и кубик выдает ошибку. Столбцов 15, если что, и они заполнены!
 
Последнее редактирование:
Регистрация
26.05.2020
Сообщения
461
Благодарностей
164
Баллы
43
Сам спросил, сам и отвечу, как обычно...

C#:
// берем из переменной текст, по которому будут искаться номера строк
var textContains = project.Variables["peremennaya"].Value;
// задаем таблицу, в которой будем искать
var sourceTable = project.Tables["Таблица1"];

// Номер столбца, по которому ищем (отсчет от 0!!!)
var searchColIndex = 2;

// Ищем в каждой строчке в таблице
for(int rowIndex = 0; rowIndex < sourceTable.RowCount; rowIndex++)
{
    // Читаем строку из таблицы
    var cells = sourceTable.GetRow(rowIndex).ToArray();
   // if (cells[searchColIndex].Contains(textContains)) // ищет по логике "содержит"
    if (cells[searchColIndex] == textContains) // ищет по логике "равно"
    {
        project.Lists["Список"].Add(rowIndex + 1); // если отмечено "Первая строка - Заголовки" в настройках таблицы
        // project.Lists["Список"].Add(rowIndex); // если НЕ отмечено "Первая строка - Заголовки" в настройках таблицы
    }
}
В сниппеты на гитхабе предложил данный код
Люди знающие, а подскажите, как доработать данный код, чтоб поиск был регистронезависимый?
Пример:
project.Variables["peremennaya"].Value значение "Москва"
А в таблице записано "МОСКВА", а другой город как положено "Санкт-Петербург"
 

Кто просматривает тему: (Всего: 2, Пользователи: 0, Гости: 2)