С# добавить уникальные значения в таблицу

Dome4ta1

Client
Регистрация
12.08.2017
Сообщения
89
Благодарностей
15
Баллы
8
Добрый день всем,

табле-1 табле-2

У меня есть 2 таблицы. С 1-таблицы я должен сперва взять ид товара и добавить на 2-таблицу и ид который я добавляю должен быт всегда уникальный для 2 таблицы, что-то у меня не получается написать это на с#.


C#:
for(var i = 2; i < count_download_excel1; i++)
{
    string id_download2 = tb.GetCell("A", i);
   
    for (var j = 1; j < count_google_table; j++)
    {
        string id_google2 = gtb.GetCell("B", j);

        if(id_google2 == id_download2)
        {
            continue;
        }else if(id_google2 != id_download2)
        {
            gtb.SetCell("B", count2, id_download2);
        }
}
}
 

BAZAg

Client
Регистрация
08.11.2015
Сообщения
1 787
Благодарностей
2 453
Баллы
113
Откуда берется переменная count2?
Вам нужно добавить новую строку или заменить содержимое?
В данный момент код заменяет содержимое в какой-то ячейке.
 
  • Спасибо
Реакции: Dome4ta1

Dome4ta1

Client
Регистрация
12.08.2017
Сообщения
89
Благодарностей
15
Баллы
8
Откуда берется переменная count2?
Вам нужно добавить новую строку или заменить содержимое?
В данный момент код заменяет содержимое в какой-то ячейке.
Откуда берется переменная count2?
последныя строка куда надо добавить данные

мне надо добавить в новую стоку все уникалные значения


В данный момент код заменяет содержимое в какой-то ячейке.
не до конца скинул код сорри)


C#:
for(var i = 2; i < count_download_excel1; i++)
{
    string id_download3 = tb.GetCell("A", i);

  

    for (var j = 1; j < count_google_table; j++)
    {
        string id_google3 = gtb.GetCell("B", j);

        if(id_google3==id_download3)
        {
            break;
        }
      
    }

        gtb.SetCell("B", count2, id_download3);

        count2++;
        Thread.Sleep(500);         

  
}
 
Последнее редактирование:

BAZAg

Client
Регистрация
08.11.2015
Сообщения
1 787
Благодарностей
2 453
Баллы
113
Откуда берется переменная count2?
последныя строка куда надо добавить данные

мне надо добавить в новую стоку все уникалные значения


В данный момент код заменяет содержимое в какой-то ячейке.
не до конца скинул код сорри)


C#:
for(var i = 2; i < count_download_excel1; i++)
{
    string id_download3 = tb.GetCell("A", i);



    for (var j = 1; j < count_google_table; j++)
    {
        string id_google3 = gtb.GetCell("B", j);

        if(id_google3==id_download3)
        {
            break;
        }
    
    }

        gtb.SetCell("B", count2, id_download3);

        count2++;
        Thread.Sleep(500);       


}
C#:
var tb1 = project.Tables["tb1"];
var tb2 = project.Tables["tb2"];

for(int i=0;i<10;i++) tb1.AddRow(i.ToString()); // demo tb1
for(int i=5;i<15;i++) tb2.AddRow(i.ToString()); // demo tb2


for(int i=0;i<tb1.RowCount;i++) {
    string[] row_tb1 = tb1.GetRow(i).ToArray();
   
    bool check = true;
    for(int j=0;j<tb2.RowCount;j++) {
        string[] row_tb2 = tb2.GetRow(j).ToArray();
        if(row_tb1[0] == row_tb2[0]){
            check = false; // Строка уже есть
            break;
        }  
    }
    if(check) tb2.AddRow(row_tb1); // Если не была найдена - добавим  
}
98782
98783
 
  • Спасибо
Реакции: Dome4ta1

Dome4ta1

Client
Регистрация
12.08.2017
Сообщения
89
Благодарностей
15
Баллы
8
C#:
var tb1 = project.Tables["tb1"];
var tb2 = project.Tables["tb2"];

for(int i=0;i<10;i++) tb1.AddRow(i.ToString()); // demo tb1
for(int i=5;i<15;i++) tb2.AddRow(i.ToString()); // demo tb2


for(int i=0;i<tb1.RowCount;i++) {
    string[] row_tb1 = tb1.GetRow(i).ToArray();
  
    bool check = true;
    for(int j=0;j<tb2.RowCount;j++) {
        string[] row_tb2 = tb2.GetRow(j).ToArray();
        if(row_tb1[0] == row_tb2[0]){
            check = false; // Строка уже есть
            break;
        } 
    }
    if(check) tb2.AddRow(row_tb1); // Если не была найдена - добавим 
}
Посмотреть вложение 98782Посмотреть вложение 98783
Спасибо большое вам!!!!
 
  • Спасибо
Реакции: BAZAg

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