Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Помогите со вставкой строк / 13 сообщений из 13, страница 1 из 1
15.04.2009, 09:47
    #35932222
ovenbaran
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со вставкой строк
Добрый день!
Помоги пжлста со вставкой строк (копирование получилось):

If Range("A" & i).Formula <> "Клиент" Then

Workbooks("EIS_f_OrdersLog2").Sheets("A" & j).Rows(i - 12 & ":" & i - 4).Select
Selection.Copy

'ВСТАВКА
For i = 20 To 500 Step 29
Rows(i & ":" & i).Select
Workbooks("EIS_f_OrdersLog2").Sheets("A" & j).Paste
Next i
End If

Вставка думаю сделана не правильно, помогите пжлста сделать её так: пока не пусто со столбца "А8" вставлять то что скопировано в 20 строчку, потом то что вставилось (это 9 строчек) от них ещё отсчитываем 20 строчек и вставляем...то есть получается с шагом 29....
Если можно ещё, то после вставки сразу вставлять разрыв страницы.

p.s. почему вставление именно строк, потому что там таблица, и вставка просто в ячейку не разорвет таблицу, а если строку вставлять- то ок.

Спасибо.
...
Рейтинг: 0 / 0
15.04.2009, 11:30
    #35932603
ovenbaran
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со вставкой строк
хелп..... =)
...
Рейтинг: 0 / 0
15.04.2009, 15:33
    #35933732
ovenbaran
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со вставкой строк
неужели никто не поможет!!!? =(
...
Рейтинг: 0 / 0
15.04.2009, 18:29
    #35934367
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со вставкой строк
Во первых, научись использовать тэг SRC.
Во вторых, не надо использовать Selection.
В третьих, что у тебя за мешанина из висящих в воздухе Rows и обращениями через книгу?
В четвертых, почему у тебя исходная область высчитывается через i и итоговая высчитывается через i, причем это уже явно совсем другой счетчик.
В пятых, при копировании размер области в которую копируешь должен совпадать с размером области откуда копируешь.
Код: plaintext
1.
2.
3.
set source_range = Workbooks("EIS_f_OrdersLog2").Sheets("A" & j).Rows(first_i -  12  & ":" & first_i -  4 )
for second_i= 20  to  500  step  29 
    src.copy destination := thisworkbook.activesheet.Rows(second_i & ":" & second_i+ 8 )
next

Для вставки разрыва страниц читай про коллекцию HPageBreaks.
...
Рейтинг: 0 / 0
15.04.2009, 18:31
    #35934371
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со вставкой строк
Ой, опечатался...
Код: plaintext
1.
2.
3.
set source_range = Workbooks("EIS_f_OrdersLog2").Sheets("A" & j).Rows(first_i -  12  & ":" & first_i -  4 )
for second_i= 20  to  500  step  29 
    source_range.copy destination := thisworkbook.activesheet.Rows(second_i & ":" & second_i+ 8 )
next
...
Рейтинг: 0 / 0
15.04.2009, 18:52
    #35934413
ovenbaran
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со вставкой строк
White OwlОй, опечатался...
Код: plaintext
1.
2.
3.
set source_range = Workbooks("EIS_f_OrdersLog2").Sheets("A" & j).Rows(first_i -  12  & ":" & first_i -  4 )
for second_i= 20  to  500  step  29 
    source_range.copy destination := thisworkbook.activesheet.Rows(second_i & ":" & second_i+ 8 )
next



White Owl Спасибо Вам! Ну вы уж не судите строго то...я же только учусь))))
подскажите пожалуйста, как мне определить (Dim) source_range ?
Копировать то как раз работает...а не могли бы вы написать ВСТАВКУ?
Спасибо.
...
Рейтинг: 0 / 0
15.04.2009, 23:02
    #35934716
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со вставкой строк
ovenbaranподскажите пожалуйста, как мне определить (Dim) source_range ?
Код: plaintext
dim source_range as range
Так сложно догадаться...
ovenbaranКопировать то как раз работает...а не могли бы вы написать ВСТАВКУ?Какую вставку? Которая ты пытался звать методом .paste? Никогда эту гадость не используй. Совершенно бессмысленный и опасный метод. Копировать надо одной командой, я уже показал как.
...
Рейтинг: 0 / 0
16.04.2009, 15:22
    #35936423
ovenbaran
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со вставкой строк
Уважаемый White Owl!
Я же написала...что с копировать проблем не возникло. Вопрос звучит как задать цыкл на вставку в каждую 20 строчку с шагом 29..... :) Вставка именно в строки 20, 29, 58.....
...
Рейтинг: 0 / 0
16.04.2009, 18:56
    #35937135
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со вставкой строк
> Автор: ovenbaran
> Я же написала...что с копировать проблем не возникло. Вопрос звучит
> как задать цыкл на вставку в каждую 20 строчку с шагом 29..... :) Вставка
> именно в строки 20, 29, 58.....
Например:
Код: plaintext
1.
2.
3.
4.
Dim i as Long
For i =  20  to  1024  Step  29 
    ActiveSheet.Cells(i, 1 ).Select
    ActiveSheet.Paste
Next i
;)


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
16.04.2009, 18:58
    #35937138
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со вставкой строк
> Автор: Игорь Горбонос

Несколько поторопился :(

> > Автор: ovenbaran
> > Вопрос звучит
> > как задать цыкл на вставку в каждую 20 строчку с шагом 29..... :)

А это как, каждая 20 строка с шагом 29?


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
17.04.2009, 09:57
    #35937788
ovenbaran
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со вставкой строк
Игорь Горбонос
> Автор: Игорь Горбонос

Несколько поторопился :(

> > Автор: ovenbaran
> > Вопрос звучит
> > как задать цыкл на вставку в каждую 20 строчку с шагом 29..... :)

А это как, каждая 20 строка с шагом 29?




Это значит вставляетм в 20 строчку, потом так как вставили 9 строчек, то получается в 29 строчку вставляем, потом опять к 29 строчке плюсуем 9 вставленных, и от них отсчитываем 20 и вставляем....и т.д....)
У меня мысль возникла задать переменную с диапозоном который вставляем, и при вставке задавать этот диапозон....сейчас пробую реализовать....буду благодарна за любую мысль)
...
Рейтинг: 0 / 0
17.04.2009, 09:58
    #35937791
ovenbaran
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со вставкой строк
причем метод Paste не подходит, так как таблица разрывается криво...нужно скорее всего insert делать....)
...
Рейтинг: 0 / 0
17.04.2009, 11:06
    #35938029
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите со вставкой строк
> Автор: ovenbaran
> Это значит вставляетм в 20 строчку, потом так как вставили 9 строчек,
> то получается в 29 строчку вставляем, потом опять к 29 строчке плюсуем 9
> вставленных, и от них отсчитываем 20 и вставляем....и т.д....)

Опять ничего не понял. Напиши формулу прогресии и используй её в вычислении
строки для вставки.
с 20-й строки начинаем, следующая 29(или 30-я строка, вставляли 9 строк???).
в 29-ю вставляем 9 строк и от них отсчитываем 20 строк? а дальше?


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Помогите со вставкой строк / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]