VBA для открытия / редактирования / копирования отчетов? – Изменить / Исправить

В моей первой реальной попытке написать код для VBA это то, что я придумал (после много полезных комментариев, прежде чем я отредактировал это …)

Один из нижеприведенных, чтобы открыть отчет и отредактировать указанный отчет, следующий будет сохранять как имя + сегодняшняя дата (я не знаю, как), а затем копировать / вставлять данные в новую книгу, а затем действовать точно так же с новый файл (IE: FUL7), 8 раз или около того, если файл существует.

Так спасибо за помощь …

Sub Test3() 'First test with compiled open and full edit macro Dim wb As Excel.Workbook Dim LastRow As Long 'Open a report, delete header/footer rows Set wb = Workbooks.Open("C:\Users\USER\Downloads\TFR7", False, False) wb.Sheets(1).Rows("1:5").EntireRow.Delete wb.Sheets(1).Range("A" & Rows.Count).End(xlUp).EntireRow.Delete wb.Sheets(1).Range("A" & Rows.Count).End(xlUp).EntireRow.Delete wb.Sheets(1).Range("J" & Rows.Count).End(xlUp).EntireRow.Delete 'Edit Sheet Font/Size With Worksheets("Sheet1").Cells.Font .Name = "Arial" .Size = 9 End With 'Edit Sheet Alignment, etc. With Worksheets("Sheet1").Cells .WrapText = False .Orientation = 0 .AddIndent = False .IndentLevel = 0 .ShrinkToFit = False .ReadingOrder = xlContext .MergeCells = False .HorizontalAlignment = xlRight .VerticalAlignment = xlBottom .WrapText = False End With 'Replace 'text to columns' and convert dates to Excel Date Value before 'Paste Values' to remove formula Columns("L:O").Select Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove Range("L2").FormulaR1C1 = "=DATEVALUE(LEFT(RC[4],10))" Range("L2").Copy Destination:=Range("L2:O2") LastRow = Cells(Cells.Rows.Count, "A").End(xlUp).Row Range("L2:O" & LastRow).FillDown Range("P1:S1").Copy Destination:=Range("L1:O1") Columns("L:O").Select Application.CutCopyMode = False Selection.Copy Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Application.CutCopyMode = False Selection.NumberFormat = "m/d/yyyy" 'Delete old date columns, remove duplicate values (by tracking numbers) Columns("P:S").Select Selection.Delete Shift:=xlToLeft ActiveSheet.Range("A1:V" & LastRow).RemoveDuplicates Columns:=19, Header:= _ xlYes 'Select cells with values, turn them blue (because silly people want them blue) LastRow = Cells(Cells.Rows.Count, "A").End(xlUp).Row ActiveSheet.Range("A2:V" & LastRow).Select With Selection.Interior .Pattern = xlSolid .PatternColorIndex = xlAutomatic .ThemeColor = xlThemeColorAccent1 .TintAndShade = 0.399975585192419 .PatternTintAndShade = 0 End With End Sub 

Interesting Posts

как получить строку unicode от excel

Excel перестает отвечать через некоторое время – для цикла vba

Файл Excel слишком большой, в каком формате я должен его преобразовать, чтобы улучшить время обработки в сценариях

Переменная проблема в листах ()

Различия между фиксированной ссылкой A1 и относительным позиционированием формулы R1C1 VBA

Что использовать в качестве логической функции, отличной от If in excel

jQuery вычисляет количество столбцов из диапазона excel

Фильтр Excel Combobox для частичных совпадений

Сортировка динамического диапазона данных по значению 1 столбца и цвет другого столбца

Как я могу исправить ошибку подключения ODBC к базе данных при повторной загрузке моей книги?

Каков правильный способ обработки неизвестной темы на сервере RTD, написанном на C ++?

Подобное приложение для GemBox для слова

Анализ данных Excel Single Cell на основе условия

Пропуск пустых значений в листе Excel

Экранные диаграммы и Excel Slicers

Давайте будем гением компьютера.