|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
30.09.2010, 11:49 | #1 |
Пользователь
Регистрация: 27.09.2010
Сообщений: 40
|
работа с массивом. перенос с таблицы
всем хеллоу!
подскажите, дайте линк или кода немного нужно впихнуть всю строку в массив разом, со всеми столбцами, как сделать это? у меня массив Dim DataArray(1 To nLastrow, 1 To nLastCol) As Variant и таблица с 10ю столбцами и соответсвтенно мне нужно к ним образаться по тем же адресам в массиве, что они на листе находятся |
30.09.2010, 12:02 | #2 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
если все физически лежит на листе то:
Rows("XX:YY").Copy Rows("ZZ").Insert Shift:=xlDown где XX - начальный номер строки из тех, что хотим вставить YY - конечный номер строки из тех, что хотим вставить ZZ - номер строки, перед которой надо все вствить (эта строка сместится вниз)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
30.09.2010, 12:09 | #3 | |
Пользователь
Регистрация: 27.09.2010
Сообщений: 40
|
Цитата:
если у меня будет цикл и я хочу вставить строку с ее порядковым номером этого делать ведь необязательно? допустим, хочу , что бы у меня 10я строка вставлялась как10.. Rows("XX:YY").Copy Rows("ZZ").Insert так не пойдет? |
|
30.09.2010, 12:31 | #4 |
Пользователь
Регистрация: 27.09.2010
Сообщений: 40
|
может у вас ошибка в коде?
rowitem = Rows("A1:J" + Trim(Str(nLastCol))).Copy выдает ошибку модет надо? rowitem = range("A1:J" + Trim(Str(nLastCol))).Copy |
30.09.2010, 12:46 | #5 |
Пользователь
Регистрация: 27.09.2010
Сообщений: 40
|
вот такой код выдаёт ошибку
Range("A1:J" + Trim(Str(nLastrow))).Copy DataArray(1).Insert |
30.09.2010, 13:02 | #6 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
так не пойдет.
если хотите сохранить порядковые номера строк, то нужно выделить служебный столбец, в котором они будут храниться, обращение и поиск производить не по номеру в массиве, а по значению в служебном столбце. Но Вы что-то усложняете, нарветесь на ситуацию, когда в служебном столбце будут две строки с одинаковыми номерами и как Вы их потом различите между собой. Что-то намудрено здесь. Или я все неправильно понял, не осознал глубины глубин...
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
30.09.2010, 13:11 | #7 | |
Пользователь
Регистрация: 27.09.2010
Сообщений: 40
|
Цитата:
|
|
30.09.2010, 13:13 | #8 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Sub tt()
Dim a a = [a1:b10] MsgBox a(1, 1) MsgBox a(10, 2) [d1:e10] = a End Sub Содержимое массива смотрите в окне Locals.
webmoney: E265281470651 Z422237915069 R418926282008
Последний раз редактировалось Hugo121; 30.09.2010 в 13:18. Причина: Содержимое массива смотрите в окне Locals. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Перенос данных из таблицы в таблицу | Kisma | БД в Delphi | 7 | 22.10.2010 12:09 |
перенос данных из одной таблицы в другую | peq | Microsoft Office Excel | 5 | 28.08.2010 08:16 |
Перенос данных из одной таблицы в другую в Excel | Vindima | Помощь студентам | 2 | 11.04.2010 19:54 |
авт. перенос данных из нескольких столбцов одной таблицы в один столбец другой таблицы | A_ALL | Microsoft Office Access | 7 | 24.08.2009 21:13 |
перенос данных из таблицы 1 в таблицу 2 | AndreyZeus | Microsoft Office Excel | 1 | 20.03.2009 16:02 |