2015-05-04 3 views
0

Мне нужно скопировать информацию из одного файла excel в другой, используя VBA. Код создает новую рабочую книгу в определенном месте назначения (* C: \ Users \ eliza_000 \ Desktop \ aaa *) для всего листа (inv), но в новой книге мне нужен только диапазон A1: E32. Вот код, что я использую, чтобы скопировать все листукопирование с одного excel на другое с помощью VBA

Sub SaveInvWithNewName() 

Dim NewFN As Variant 
'Copy Invoice to a new workbook 
ActiveSheet.Copy 
NewFN = "C:\Users\eliza_000\Desktop\aaa\inv" & Range("E6").Value & ".xlsx" 
ActiveWorkbook.SaveAs NewFN, FileFormat:=xlOpenXMLWorkbook 
ActiveWorkbook.Close 


End Sub 

ответ

1

Рассмотрим:

Sub dural() 
    ActiveSheet.Copy 
    Rows("33:1048576").Delete 
    Columns("F:xfd").Delete 
End Sub 

Отрегулировать, если вы используете версию Excel до 2007 года ,

1

Что-то вроде:

Dim WB As Workbook 
Dim WB2 As Workbook 
Dim NewFN As String 

Set WB = ThisWorkbook 
Set WB2 = Workbooks.Add(1) 

WB.ActiveSheet.Range("A1:E32").Copy WB2.Sheets(1).Range("a1") 

NewFN = "C:\Users\eliza_000\Desktop\aaa\inv" & Range("E6").Value & ".xlsx" 
NewFN = "C:\temp\stuff.xlsx" 
WB2.SaveAs NewFN, FileFormat:=xlOpenXMLWorkbook 
WB2.Close 
Смежные вопросы