Добрый день! Подскажите, как после заполнения столбца Е на листе "отчет", на листе "план_график" в строках 3, 5 и 7 должны появиться соответствующие данные за вчерашний день (с учетом выполненного плана)
Добрый день! Подскажите, как после заполнения столбца Е на листе "отчет", на листе "план_график" в строках 3, 5 и 7 должны появиться соответствующие данные за вчерашний день (с учетом выполненного плана)Ёжж
Sub Прямоугольник1_Щелчок() ic = Cells(1, 5).Value + 5 y = 3 For x = 3 To 5 plan = Cells(x, 6).Value Select Case plan Case Is < 100 Sheets(2).Cells(y, ic).Value = Cells(x, 5).Value / 1000 Case Else ict = Sheets(2).Cells(y - 1, Columns.Count).End(xlToLeft).Column Sheets(2).Cells(y, ict).Value = Cells(x, 5).Value / 1000 End Select y = y + 2 Next x MsgBox "Данные перенесены" End Sub
[/vba]
Добрый день. Макрос на кнопке лист "Отчет" [vba]
Код
Sub Прямоугольник1_Щелчок() ic = Cells(1, 5).Value + 5 y = 3 For x = 3 To 5 plan = Cells(x, 6).Value Select Case plan Case Is < 100 Sheets(2).Cells(y, ic).Value = Cells(x, 5).Value / 1000 Case Else ict = Sheets(2).Cells(y - 1, Columns.Count).End(xlToLeft).Column Sheets(2).Cells(y, ict).Value = Cells(x, 5).Value / 1000 End Select y = y + 2 Next x MsgBox "Данные перенесены" End Sub
Добрый день. Если правильно понял, то вот так [vba]
Код
Sub Прямоугольник1_Щелчок() ic = Cells(1, 5).Value + 5 y = 3 For x = 3 To 5 plan = Cells(x, 6).Value Select Case plan Case Is < 100 Sheets(2).Range("F" & y & ":AI" & y).ClearContents Sheets(2).Cells(y, ic).Value = Cells(x, 5).Value / 1000 Case Else ict = Sheets(2).Cells(y - 1, Columns.Count).End(xlToLeft).Column Sheets(2).Cells(y, ict).Value = Cells(x, 5).Value / 1000 End Select y = y + 2 Next x MsgBox "Данные перенесены" End Sub
[/vba]
Добрый день. Если правильно понял, то вот так [vba]
Код
Sub Прямоугольник1_Щелчок() ic = Cells(1, 5).Value + 5 y = 3 For x = 3 To 5 plan = Cells(x, 6).Value Select Case plan Case Is < 100 Sheets(2).Range("F" & y & ":AI" & y).ClearContents Sheets(2).Cells(y, ic).Value = Cells(x, 5).Value / 1000 Case Else ict = Sheets(2).Cells(y - 1, Columns.Count).End(xlToLeft).Column Sheets(2).Cells(y, ict).Value = Cells(x, 5).Value / 1000 End Select y = y + 2 Next x MsgBox "Данные перенесены" End Sub