Excel 基于单元格值从可变图纸名称复制的VBA代码
希望我能得到一些帮助,因为我有点迷路了 我有一个主模板和一个用户模板。多个(10+以上)用户将提交他们的工作表 用户有一个他们完成的“提交”选项卡。当他们提交工作表时,工作表会在其文件中创建一个新选项卡,并将其提交的值粘贴到新选项卡中(以便不保留公式),并根据每月提交的内容(即“1月19日”)命名新选项卡 然后,我希望使用宏将他们提交的特定列复制到我的主文件中,但是在1月,我将从1月19日选项卡复制,在2月,我将从2月19日选项卡复制。因此,在我的宏中,我正在努力找到正确的代码,其中工作表名称将根据月份名称而变化 目前我有以下代码:Excel 基于单元格值从可变图纸名称复制的VBA代码,excel,vba,Excel,Vba,希望我能得到一些帮助,因为我有点迷路了 我有一个主模板和一个用户模板。多个(10+以上)用户将提交他们的工作表 用户有一个他们完成的“提交”选项卡。当他们提交工作表时,工作表会在其文件中创建一个新选项卡,并将其提交的值粘贴到新选项卡中(以便不保留公式),并根据每月提交的内容(即“1月19日”)命名新选项卡 然后,我希望使用宏将他们提交的特定列复制到我的主文件中,但是在1月,我将从1月19日选项卡复制,在2月,我将从2月19日选项卡复制。因此,在我的宏中,我正在努力找到正确的代码,其中工作表名称将
Dim OpenFileName As String
Dim wb As Workbook
'Select and Open workbook
OpenFileName = Application.GetOpenFilename(",*.xlsm")
If OpenFileName = "False" Then Exit Sub
Set wb = Workbooks.Open(OpenFileName)
ThisWorkbook.Sheets("User 1").Range("B19:B36").Value = wb.Sheets("***Variable month name***").Range("B19:B36").Value
ThisWorkbook.Sheets("Control").Range("D15") = Now
wb.Close
如果您能提供任何帮助,我们将不胜感激 用于当月使用
Format(Now,"mmm-yy")
这将为您提供2月20日
。因此,将其合并到您的代码中
wb.Sheets(Format(Now,"mmm-yy"))
用于特定的月/年使用
Dim dt As Date
Dim m As Long, y As Long
m = 2 '<~~ Feb (Month)
y = 2019 '<~~ Year
dt = DateSerial(y, m, 1)
wb.Sheets(Format(dt,"mmm-yy"))