Вопрос о копировании данных из одной открытой рабочей книги в другую - PullRequest
0 голосов
/ 08 марта 2019

Я хочу скопировать диапазон данных (столбцы A: M) во временную рабочую таблицу Excel с префиксом "tmp" в рабочую таблицу, предназначенную для преобразования всего этого вывода данных в полезный отчет.

В настоящее время пользователь просто вручную скопирует временный вывод в инструмент создания отчетов, а затем запустит макрос.

Можно ли автоматизировать этот ввод данных?

1 Ответ

0 голосов
/ 09 марта 2019

Аарон, SO используется для обучения. Но, так как мне стало скучно, и если вы не публикуете это здесь, это идея о том, как достичь вашей цели. Имейте в виду, что с VBA и, возможно, со всеми другими языками, есть 20 различных способов выполнить одну и ту же задачу, но для каждого пользователя уникальный сценарий - это то, что SO любит решать. Чтобы дать вам быстрый старт и, возможно, некоторую мотивацию ...

Option Explicit

Sub CopyStuff()

Dim ws As Worksheet
Dim ws2 As New Worksheet
Dim rngToCopy As Range
Dim ShtName As String

'use ActiveSheet or actual name
Set ws = ActiveSheet
Set rngToCopy = ws.UsedRange.Columns("A:M")
Set ws2 = ThisWorkbook.Worksheets.Add

'gets name for sheet
ShtName = InputBox("Please enter name for Sheet.")

'more properties to fill if needed, or adjust area to copy to
'just an example here
With ws2
    .Name = "tmp" & ShtName
    rngToCopy.Copy .UsedRange.Columns(.UsedRange.Columns.Count + 1)
End With

'cleanup
Set ws = nothng: Set ws2 = Nothing
Set rngToCopy = Nothing: ShtName = vbNullString

End Sub

Danny

ExcelVBADude

...