как в C# взять строку из таблицы содержащую текст?

Andr123

Client
Регистрация
08.01.2016
Сообщения
75
Благодарностей
10
Баллы
8
Подскажите как в C# взять строку из таблицы содержащую текст и положить в переменную? Как на картинке
 

Вложения

  • 43,3 КБ Просмотры: 103

Andr123

Client
Регистрация
08.01.2016
Сообщения
75
Благодарностей
10
Баллы
8
Нашел поиском вариант как в C# взять строку из таблицы содержащую текст, но как потом положить определенный столбец данной строки в переменную?


C#:
IZennoTable table = project.Tables["Table"];
string str = project.Variables["text"].Value;
string row;

for (int i = 0; i < table.RowCount; i++) {
    row = string.Concat(table.GetRow(i));
    if (row.Contains(str)) {
        //table.DeleteRow(i); i--; // раскомментировать, если строку нужно брать с удалением
        return row;
    }
}
 

orka13

Client
Регистрация
07.05.2015
Сообщения
2 166
Благодарностей
2 168
Баллы
113
Нашел поиском вариант как в C# взять строку из таблицы содержащую текст, но как потом положить определенный столбец данной строки в переменную?


C#:
IZennoTable table = project.Tables["Table"];
string str = project.Variables["text"].Value;
string row;

for (int i = 0; i < table.RowCount; i++) {
    row = string.Concat(table.GetRow(i));
    if (row.Contains(str)) {
        //table.DeleteRow(i); i--; // раскомментировать, если строку нужно брать с удалением
        return row;
    }
}
может ячейку а не столбец?
C#:
IZennoTable table = project.Tables["Table"];
string str = project.Variables["text"].Value;
string row;

for (int i = 0; i < table.RowCount; i++) {
    row = string.Concat(table.GetRow(i));
    if (row.Contains(str)) {
        //table.DeleteRow(i); i--; // раскомментировать, если строку нужно брать с удалением
        return table.GetCell("A", i); // вернет ячейку первого столбца (А)
    }
}
 

Andr123

Client
Регистрация
08.01.2016
Сообщения
75
Благодарностей
10
Баллы
8
Да, все верно, большое спасибо!
 

Maxximmym11

Client
Регистрация
04.05.2021
Сообщения
8
Благодарностей
1
Баллы
1
Может кто подскажет как в C# взять строку из таблицы содержащую текст , имено строку и положить её в список
либо ещё вариант , поиск текста в таблице в ячейке В ,и если есть совпадения тогда берёт целую строку и ложит в список?
 
  • Спасибо
Реакции: rich788

kolina

Client
Регистрация
05.10.2019
Сообщения
158
Благодарностей
44
Баллы
28
Возможно кому то понадобиться. Намучал совместно с chatgpt, cледующий код. Стояла задача взять из таблица строку у которой в столбце 'E' находится полное соответствие текста находящегося в переменной 'artikul1'. нужно было в строке этой взять 2 столбца и положить в соответствующие переменные. Вот код c#
C#:
IZennoTable table = project.Tables["Таблица 1"];
string str = project.Variables["artikul1"].Value;
string row;
string priceZac = ""; // Создание переменной для хранения значения колонки 'I'
string nasklade = ""; // Создание переменной для хранения значения колонки 'K'

for (int i = 0; i < table.RowCount; i++) {
    row = table.GetCell("E", i); // Получение значения ячейки в столбце 'E' текущей строки
    if (row == str) { // Сравнение значения ячейки со значением переменной
        priceZac = table.GetCell("I", i); // Получение значения ячейки в столбце 'I'
        nasklade = table.GetCell("K", i); // Получение значения ячейки в столбце 'K'
        project.Variables["priceZac"].Value = priceZac; // Сохранение значения в переменной priceZac в проекте
        project.Variables["nasklade"].Value = nasklade; // Сохранение значения в переменной nasklade в проекте
        // table.DeleteRow(i); i--; // раскомментировать, если строку нужно брать с удалением
        return table.GetRow(i); // Возвращает текущую строку целиком
    }
}

// Дополнительный код, который будет выполняться, если не найдено совпадение
// Можете добавить нужную обработку, если совпадение не найдено
 
  • Спасибо
Реакции: nik-n и Live9up

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