Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Форматирование столбцов при помощи цикла
 
Всем спасибо за помощь :) решение найдено на этом сайте и немного модифицировано под конкретную задачу.  
 
Sub Redesigner()  
   Dim InVal As Variant  
   Dim OutVal() As Variant  
   Dim j, k, i As Long  
   Dim NewSheet  
   Range("A1:AG15").Select  
   Selection.Copy  
   Sheets.Add After:=Sheets(Sheets.Count)  
   Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _  
       False, Transpose:=True  
     
   i = 1  
   InVal = Selection.Formula  
   ReDim OutVal(1 To Selection.Count, 1 To 3)  
   For j = 2 To UBound(InVal, 1)  
       For k = 2 To UBound(InVal, 2)  
           If InVal(j, k) <> "" Then  
               OutVal(i, 1) = InVal(j, 1)  
               OutVal(i, 2) = InVal(1, k)  
               OutVal(i, 3) = InVal(j, k)  
               i = i + 1  
           End If  
       Next k  
   Next j  
   Set NewSheet = Worksheets.Add  
   Range("A1") = "Дата"  
   Range("B1") = "Сотрудник"  
   Range("C1") = "Часы"  
   NewSheet.Range("A2").Resize(UBound(OutVal, 1), 3).Value = OutVal  
End Sub
Форматирование столбцов при помощи цикла
 
Прошу прощения, заработался :)    
Скрипт отрабатывается, но писался в MS Excel 2010 После сохранения в формате MS Excel 97- 2003 (приложил к сообщению, размер около 60кб - в соответствии с правилами форума) он стал выдавать немного другой результат, но в целом это не критично.  
 
Данный скрипт перестраивает структуру таблицы, так как в ней есть место повотряющихся однотипных действий ( перемещние столбцов, копирование формул, данных, вставки их в новые столбцы) то на мой взгляд было бы удобнее реализовать это в цикле, но с ними у меня совсем плохо, поэтому обратился к вам.    
 
Скрипт перестраивает только первые два-три столбца, остальные не стал писать, чтобы задать цикл думаю достаточно двух, трех итераций, а там уже можно будет и задать диапазон. Скрипты писать только начинаю, поэтому многих нюансов не знаю.
Форматирование столбцов при помощи цикла
 
Здравствуйте. Есть такая задача: имеется таблица N на N. К данной таблице применяются определенные преобразования, но они однотипные, хочется сделать это в цикле, только ни разу их не использовал. Фрагмент кода, который нужно выполнять в цикле привожу в файле ( в виде скриншота - так как при выводе в текстовый файл сбивается кодировка) и тут.'  
 
Чистый скрипт, комменты не хочет показывать в нужной кодировке, что мы можем наблюдать в первом посте, поэтому скрипт в чистом виде чуть ниже, а комментарии выше в прикрепленном файле можно почитать.  
 
    Columns("E:E").Select                  
    Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove  '  
    Range("D3:D33").Select '  
    Selection.Cut          '  
    Range("E3").Select     '    
    ActiveSheet.Paste      '  
    Columns("E:E").EntireColumn.AutoFit '    
    Range("B3").Select '  
    Selection.Copy     '  
    Range("D3").Select '  
    ActiveSheet.Paste  '  
    Columns("D:D").EntireColumn.AutoFit    
    Application.CutCopyMode = False  
    Selection.AutoFill Destination:=Range("D3:D33"), Type:=xlFillDefault    
       
 
 
    Columns("G:G").Select          
    Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove '    
    Range("F3:F33").Select  '  
    Selection.Cut          '  
    Range("G3").Select '    
    ActiveSheet.Paste      '  
    Columns("G:G").EntireColumn.AutoFit '    
    Range("D3").Select '    
    Selection.Copy     '  
    Range("F3").Select '  
    ActiveSheet.Paste  '  
    Columns("F:F").EntireColumn.AutoFit    
    Application.CutCopyMode = False  
    Selection.AutoFill Destination:=Range("F3:F33"), Type:=xlFillDefault
Страницы: 1
Наверх