Скопировать с активной ячейки влево, макрос VBA
Формулировка задачи:
Здравствуйте. есть данные в Excel
нужно скопировать с активной ячейки лишь из столбца E5:E10, и вставить влево только выделенные, при этом цвета и пустые ячейки не копировать, а только значения
в вложении есть пример 2 макросов недоработанных
Если это возможно то получится ли, чтобы автоматически и ежедневно копировало с 24:00 по 2:00 ночи времени с E5:E10 в D510
Решение задачи: «Скопировать с активной ячейки влево, макрос VBA»
textual
Листинг программы
Public TimerFlag As Boolean Public MyEarliestTime As Variant Sub Timer_Tick() If TimerFlag Then If Now <= Date + TimeValue("02:00:00") Then Call КопирOвать_непустые_E5_E10_влево MyEarliestTime = Now + TimeValue("00:00:01") Else MyEarliestTime = Date + 1 End If Application.OnTime EarliestTime:=MyEarliestTime, Procedure:="Timer_Tick" End If End Sub Sub Копировать_выделенные_непустые_ячейки_из_Е_влево() Dim r As Range, C As Range Set r = Intersect(Application.Selection, ActiveSheet.UsedRange) Set r = Intersect(r, Columns(5)) If Not r Is Nothing Then For Each C In r.Columns(1).Cells If Trim(C) <> "" Then C.Offset(, -1) = C Next C End If End Sub Sub КопирOвать_непустые_E5_E10_влево() Dim i As Integer For i = 5 To 10 With Cells(i, 5) If Trim(.Value) <> "" Then .Offset(, -1) = .Value End If End With Next i End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д