Как скопировать данные из таблицы привязанной к файлу в таблицу не привязанную к файлу?

Adorim

Client
Регистрация
09.05.2017
Сообщения
42
Благодарностей
2
Баллы
8
Есть таблица 1, она привязана к файлу, есть таблица 2, она не привязана. В таблице 1 270 000 строк и перебор счётчиком по одной строке и запись в таблицу 2 занимает пол часа. Пробовал взять строки, все, записать в список, пишет без учёта ячеек, просто все данные с новой строки. Пробовал взять столбец и записать его в список, получилось сделать это с одним столбиком, там были ссылки, но остальные не берутся из-за ошибки
Выполнение действия Table Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.
Имя параметра: index
Сохранить в файл и привязать к таблице тоже нельзя потому-что файлы будут весить слишком много.
Как это сделать? Почему нет кубика который бы просто копировал из таблицы в таблицу или из файла в таблицу не привязывая её к этому файлу?
 

Alex91

Известная личность
Read only
Регистрация
15.08.2024
Сообщения
880
Благодарностей
253
Баллы
63
Попробуй отключить отрисовку действий, тогда должно мгновенно происходить копирование.
 

Adorim

Client
Регистрация
09.05.2017
Сообщения
42
Благодарностей
2
Баллы
8
Попробуй отключить отрисовку действий, тогда должно мгновенно происходить копирование.
Пол часа занимает в зеннопостере, в проджект мэйкере даже с выключенной отрисовкой за 10 минут прошёл 22 000 строк. Мне нужно копирование, а не перебор.
 

Alex91

Известная личность
Read only
Регистрация
15.08.2024
Сообщения
880
Благодарностей
253
Баллы
63
А вообще , поищи на форуме код c#, по работе с таблицами. Там ты сможешь любую тяжелую логику реализовать.
 

Alex91

Известная личность
Read only
Регистрация
15.08.2024
Сообщения
880
Благодарностей
253
Баллы
63
Ааа, что не увидел что мульен строк :-)
Не, ну.... Блин.. Миллион строк из таблицы за полчаса, это вообще норм...
Ты как бы не тот инструмент юзаешь... Для таких объёмов бд нужна а не эксель.
 

K R

Client
Регистрация
14.01.2017
Сообщения
140
Благодарностей
148
Баллы
43
Код взят отсюда. Копирует содержимое одной таблицы в другую без привязки к файлу. Но я не знаю сколько времени он будет копировать миллион строк.
Названия таблиц замените на свои.
Копирование таблицы:
// Копирует полностью содержимое Таблицы 1 в Таблицу 2
var table1 = project.Tables["Таблица 1"];
var table2 = project.Tables["Таблица 2"];
for(int i=0; i<table1.RowCount; i++) {
    table2.AddRow(table1.GetRow(i).ToArray());
}
 
  • Спасибо
Реакции: Adorim

Adorim

Client
Регистрация
09.05.2017
Сообщения
42
Благодарностей
2
Баллы
8
Код взят отсюда. Копирует содержимое одной таблицы в другую без привязки к файлу. Но я не знаю сколько времени он будет копировать миллион строк.
Названия таблиц замените на свои.
Копирование таблицы:
// Копирует полностью содержимое Таблицы 1 в Таблицу 2
var table1 = project.Tables["Таблица 1"];
var table2 = project.Tables["Таблица 2"];
for(int i=0; i<table1.RowCount; i++) {
    table2.AddRow(table1.GetRow(i).ToArray());
}
200 тысяч строк, не миллион, я написал там таблица 1 и 200 000, копирует за несколько секунд, спасибо.
 

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