2016-07-29 40 views
1

我有2个excel文件。一个设置为只读并从数据库收集数据。另一个excel文件的目的是复制所需的列。 代码已启动并运行我没有任何问题。但是,生成的excel文件名在每个月的开始时都会更改。为了使代码正常工作,我需要每次更改代码中的源代码名称。任何人有任何想法如何解决这个问题?如何解决变化,生成的文件名称变量?

这是我如何申报簿和工作表变量:

'set variables for wkb and ws to copy 
Dim wbSource As Workbook 
Set wbSource = Workbooks("UK2_2016_06.xlsx") 

Dim wsCopy As Worksheet 
Set wsCopy = wbSource.Worksheets("UK2_2016_06") 'change name as needed 
+0

这可能对您有用:[日期和时间函数(http://www.classanytime.com/mis333k/sjdatetime.html) –

回答

2

这是你想要的吗?

Dim mnth As Long, Dt As Long 

mnth = Month(Date) 
Dt = Day(Date) 

'~~> If 06 is month then 
Set wsCopy = wbSource.Worksheets("UK2_" & Year(Date) & "_" & Format(mnth, "00")) 

'~~> If 06 is date then 
Set wsCopy = wbSource.Worksheets("UK2_" & Year(Date) & "_" & Format(Dt, "00")) 

同样工作簿:)