- Регистрация
- 22.09.2015
- Сообщения
- 6 835
- Благодарностей
- 1 275
- Баллы
- 113
С самого утра бьюсь и никак. Может кто подскажет решение. Есть две таблицы, исходная (source) и целевая (destionation). Надо взять из исходной ID (колонка А) найти его в целевом (колонка А) и в целевой таблице, в колонку B вставить соответствующее значение из колонки B исходной таблицы. Для поиска использую данный сниппет, но не получается привязаться к строке таблицы в которой находится нужный ID что бы записать нужное значение в нужную строку. Пример таблиц прилагаю в архиве. Форум не разрешает XLS добавлять.
Код:
// берем из переменной текст, который надо искать
var textContains = project.Variables["USER_ID"].Value;
// получаем таблицу, в которой будем искать
var sourceTable = project.Tables["source"];
// ищем в каждой строчке в таблице
lock(SyncObjects.TableSyncer)
{
for(int i=0; i < sourceTable.RowCount; i++)
{
// читаем строку из таблицы (это будет массив ячеек)
var cells = sourceTable.GetRow(i).ToArray();
// пройдем в цикле по всем ячейкам
for (int j=0; j < cells.Length; j++)
{
// проверяем содержание текста в ячейке, если есть совпадение возвращаем "yes"
if (cells[j].Contains(textContains))
return String.Join(":", sourceTable.GetRow(i));
}
}
}
// если ничего не нашли возвращаем "no"
return "no";
Вложения
-
11,3 КБ Просмотры: 6