2013-10-11 11 views
4

Я новичок до Excel VBA.Excel VBA Скопируйте диапазон в новую рабочую книгу

Я пытаюсь скопировать ряд данных из рабочего листа в новую книгу Excel и сохранить новую книгу со значением в E3.

В качестве бонуса, я хотел бы также иметь возможность скопировать данные в wordpad и сохранить как E3.xml

Вот VBA у меня до сих пор:

Sub CopyOutput() 
Dim myname As String 
mystring = E3 
Dim myselection As Range 

myselection = Sheets("Output").Columns("F").Select 
Set NewBook = Workbooks.Add 
    With NewBook 
     .SaveAs Filename:="C:\Program Files\White Plume\Scenarios\" & myname & ".xls", FileFormat:= _ 
      xlsx, CreateBackup:=False 
    End With 
myselection.Paste 
End Sub 
+0

Вы хотите скопировать весь столбец F? – Santosh

ответ

8

Изменить в соответствии с ваши специфические особенности или сделать более общие по мере необходимости:

Private Sub CopyItOver() 
    Set NewBook = Workbooks.Add 
    Workbooks("Whatever.xlsx").Worksheets("output").Range("A1:K10").Copy 
    NewBook.Worksheets("Sheet1").Range("A1").PasteSpecial (xlPasteValues) 
    NewBook.SaveAs FileName:=NewBook.Worksheets("Sheet1").Range("E3").Value 
End Sub 
+0

Спасибо, Ланс. Скрипт для копирования и вставки работает, но у меня все еще есть проблема с SaveAs. Я пытаюсь создать файл с именем A3.xlsx. Моя строка VBA ниже: NewBook.SaveAs Имя файла: = NewBook.Worksheets («Sheet1»). Диапазон («A3»). Значение – user2872317

+0

Вам нужно быть более конкретным с тем, что ваша проблема? Какую ошибку вы получаете? –

+0

Обратите внимание, что если вы просто не можете найти файл, мой закончил в папке «Документы». Вероятно, вы также захотите указать путь. –

Смежные вопросы