寻求对此的输入。在下面的代码中,我正在做的是从工作表MayData.csv复制数据并粘贴到Master2017.xlsx中。
Master2017是主电子表格,包含每月更新的数据。 因此,MayData.csv将根据月份而变化(JuneData.csv,JulyData.csv,等等......)
我怎样才能使xxxData.csv动态化?现在我尝试运行宏,但每次都必须更改工作表的名称。
这里的代码或多或少看起来像(我只包括部分内容):
Dim intChoice As Long
Dim strPath As String
Dim intUsedRows As Integer
Dim intCounter As Integer
Dim Lastrow As Long
'Open Selected File
Workbooks.Open (strPath)
Columns("C:D").Select
Selection.Delete Shift:=xlToLeft
Columns("F:H").Select
Selection.Delete Shift:=xlToLeft
Columns("G:H").Select
Selection.Delete Shift:=xlToLeft
Columns("B:B").Select
Windows("Master 2017.xlsx").Activate
Windows("MayData.csv").Activate
Columns("B:E").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Windows("Master 2017.xlsx").Activate
Windows("MayData.csv").Activate
Columns("I:S").Select
答案 0 :(得分:0)
用户是否选择了CSV文件?如果是,那么当您打开它时,您可以设置一个工作簿变量,以便稍后可以参考它。
Dim wb As Workbook
'...
Set wb = Workbooks.Open(strPath)
'...
With wb.Sheets(1)
.Columns("C:D").Delete Shift:=xlToLeft
.Columns("F:H").Delete Shift:=xlToLeft
.Columns("G:H").Delete Shift:=xlToLeft
End With
'...