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

Adorim

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

Alex91

Пользователь
Регистрация
15.08.2024
Сообщения
94
Благодарностей
21
Баллы
8
Попробуй отключить отрисовку действий, тогда должно мгновенно происходить копирование.
 

Adorim

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

Alex91

Пользователь
Регистрация
15.08.2024
Сообщения
94
Благодарностей
21
Баллы
8
А вообще , поищи на форуме код c#, по работе с таблицами. Там ты сможешь любую тяжелую логику реализовать.
 

Alex91

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

K R

Client
Регистрация
14.01.2017
Сообщения
119
Благодарностей
117
Баллы
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
Сообщения
22
Благодарностей
2
Баллы
3
Код взят отсюда. Копирует содержимое одной таблицы в другую без привязки к файлу. Но я не знаю сколько времени он будет копировать миллион строк.
Названия таблиц замените на свои.
Копирование таблицы:
// Копирует полностью содержимое Таблицы 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, копирует за несколько секунд, спасибо.
 

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