Страницы: 1
RSS
Автоматическое добавление дат и отображение табелей сотрудника
 
Доброе утро, уважаемые форумчане!

в примере необходимо   добавить не достающих дат, и добавить табель.
Есть макрос с добавлением дат, но он работает только по одному сотруднику.  
Как исправить по кодам  макроса чтобы добавили дату всех сотрудников.
Код
Sub MyDateAdd()
       Dim Sh, FUN As Object
    Dim MyRange As Range
    Dim MyCol, FirstRow, i, MaxDays, MyMonth, MyYear As Long
    Dim TempDate As Date
         Set FUN = Application.WorksheetFunction
     Set MyRange = Application.InputBox("Выделите таблицу для обработки польностью", Type:=8)
    Set Sh = MyRange.Parent
     FirstRow = MyRange.Row + 1
    MyCol = MyRange.Column
    MyMonth = Month(Sh.Cells(FirstRow, MyCol).Value)
    MyYear = Year(Sh.Cells(FirstRow, MyCol).Value)
       MaxDays = Day(FUN.EoMonth(FUN.Max(MyRange.Columns(1)), 0))
        Application.ScreenUpdating = False
       Application.Calculation = xlCalculationManual
        i = 1
       Do While i <= MaxDays
             TempDate = DateSerial(MyYear, MyMonth, i)
               If Sh.Cells(i + 1, MyCol).Value <> TempDate Then
            Sh.Rows(i + 1).Insert
                   Sh.Cells(i + 1, MyCol).Value = TempDate
                      i = i + 1
        Else
                    i = i + 1
        End If
    Loop
    
        Sh.Range(Sh.Cells(FirstRow, MyCol + 1), Sh.Cells(FirstRow, MyRange.Columns.Count)).NumberFormat = "[h]:mm:ss"
     Sh.Range(Sh.Cells(FirstRow, MyCol), Sh.Cells(FirstRow, MyRange.Columns.Count)).Copy
    Sh.Range(Sh.Cells(FirstRow, MyCol), Sh.Cells(MaxDays + 1, MyRange.Columns.Count)).PasteSpecial xlPasteFormats
        Application.ScreenUpdating = True
       Application.Calculation = xlCalculationAutomatic
 End Sub 
Изменено: Maks - 28.11.2013 14:29:28
 
непонятна работа этого макроса - какую таблицу ему надо выделить?

а писать свой макрос - лениво
Живи и дай жить..
 
Юрий, добрый день!
Честно, не знаю как правильно назвать тему, поэтому написал автозаполнение. :(
насчет коды  вышлю снова без пустых строк. ( во вложении)
 
описание в файле во вложении
нужен макрос для создания автоматическое добавление дат и табелей
Изменено: Maks - 28.11.2013 16:33:56
 
Доброе утро, форумчане!
Наверно никто не сможет сделать...  :(
 
вариант без макросов
Удивление есть начало познания © Surprise me!
И да пребудет с нами сила ВПР.
 
можно без макросов, но их много будет, хотя бы с макросом ...
отразить табелей сотрудника  обязательно в Результате.
Изменено: Maks - 29.11.2013 15:15:54
 
другой вариант есть кто нибудь?
 
Если вести данные как базу данных, то достаточно в списке добавить даты без заполнения данных по сотрудникам, а табель смотреть через сводную таблицу
 
DOC,  сперва базу выгрузка из программы,  в нем нужно добавить пропущенные даты и отразить табелей сотрудника...
в сводной таблице знаю как делать но, у меня не получается отразить  табелей сотрудника.
Вы сможете мне оставить ваш пример, я разберусь...
Изменено: Maks - 02.12.2013 10:50:00
 
Добрый вечер!
Никто не решили данную проблему? Наверно закрыть тему?
 
Форумчане, доброе утро!
Наверно никто не поможет...
Как составить формулу или макрос для отображения табелей сотрудника?
Заранее спасибо
Страницы: 1
Читают тему
Наверх