Страницы: 1
RSS
Заполнение листа БД из массива, Заполнение одного листа из массива на другом листе с помощью скрипта
 
Добрый день, уважаемые форумчане, во вложении файл пример, то ли жара так действует, то ли я от рождения тупенький, но не могу создать цикл, по которому будет заполняться лист BDB всеми полями(кроме пустых) с листа Blank.
Добавил кнопку, но там корявый очень цикл на первые 2 строки(это даже не совсем цикл, так как не третью строку он уже не работает)

Что от меня требуется в финале:
При нажатии на кнопку все непустые ячейки с листа Blank должны переместиться на лист BD (во вложенном файле уже итоговый вариант как должно получится)
 
Цитата
FX_SmpL Меркулов написал:
все непустые ячейки с листа Blank должны переместиться
уверены что все? или все таки определенные? например те которые  в таблице и имеют количество??? или все таки все? (и А1 и В1?)
Изменено: Mershik - 06.07.2020 15:28:55
Не бойтесь совершенства. Вам его не достичь.
 
Да, я выразился неправильно, интересуют только те, где есть количество
 
FX_SmpL Меркулов,
Код
Sub the_change()
Dim i As Long
Dim lr As Long
Dim lr2 As Long
Dim cell As Range, rng As Range
Dim Blank As Worksheet
Application.ScreenUpdating = False
Set Blank = Worksheets("blank")
lr = Worksheets("blank").Cells(Rows.Count, 2).End(xlUp).Row + 2
Set rng = Blank.Range("D5:D" & lr & ",F5:F" & lr)
For Each cell In rng
    If Not IsEmpty(cell) Then
    With Worksheets("BD")
        lr2 = .Cells(Rows.Count, 1).End(xlUp).Row + 1
        .Cells(lr2, 1) = Blank.Cells(1, 2)
        .Cells(lr2, 2) = Blank.Cells(2, cell.Column - 1)
        .Cells(lr2, 3) = Blank.Cells(cell.Row, cell.Column - 1)
        .Cells(lr2, 4) = Blank.Cells(cell.Row, cell.Column)
    End With
    End If
Next cell
Application.ScreenUpdating = True
End Sub
Не бойтесь совершенства. Вам его не достичь.
 
и "переместиться" должны переместиться или быть скопированы?
переместить это взять с исходного места и поместить в какое-то другое
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Ігор Гончаренко, а хорошо подмечено)
Не бойтесь совершенства. Вам его не достичь.
 
1) да, нужно скопировать, а не переместить
2) Mershik огромное спасибо, а то уже голова кипит, не мог разобраться, выручил очень.

Проблема решена, всем спасибо
Страницы: 1
Наверх