1
我有必要在以下格式Excel的VBA合并CSV和和值
- 第1列是一个数字合并报表列表
- 第2列是一个字符串
- 最大行数是动态
在这样的方式来总结在塔1中的号码相匹配的字符串(删除重复)
铜rrently我合并的CSV文件与此
Dim files() As String
files = AllFiles(GetFolder) 'returns array of files in folder
Dim i As Long
For i = 0 To UBound(files)
Windows("Monthly KB Page Access Report Generator.xls").Activate
ActiveCell.Value = files(i)
wrkbookvar2 = Dir(files(i))
ActiveCell.Offset(1, 0).Activate
Workbooks.Open Filename:=GetFolder & "\" & files(i)
Set dataset_workbook = ActiveWorkbook
Range(ActiveCell.SpecialCells(xlLastCell), Cells(1)).Copy
Windows("Monthly KB Page Access Report Generator.xls").Activate
Cells(ActiveCell.SpecialCells(xlLastCell).Row, 1).Select
ActiveSheet.Paste
dataset_workbook.Close
Next
这融合了2个问题
- 每个报告的第一小区被改写的报告文件名
- 打开后每个文件,它会提示用户说剪贴板中有大量数据,我想避免这种情况
我认为下面的代码可能会合并我的数据和总和值,但我无法确定因为我目前的类型不匹配,由于报告文件名显示
' Sort
Windows("filename.xls").Activate
Columns("A:B").Sort Key1:=Range("B1"), Order1:=xlAscending
' merge
LastRow = ActiveSheet.UsedRange.Rows.Count
Set r = ActiveSheet.UsedRange.Resize(1)
With Application.WorksheetFunction
For iRow = 2 To LastRow
If Cells(iRow, 2) = Cells(iRow + 1, 2) Then
Cells(iRow, 1) = Cells(iRow, 1) + Cells(iRow + 1, 1)
Rows(iRow + 1).Delete
End If
Next iRow
End With
有人介意帮助我解决这个问题,我在VBA很糟糕。
UPDATE: 1号被移除
Windows("Monthly KB Page Access Report Generator.xls").Activate
ActiveCell.Value = files(i)
wrkbookvar2 = Dir(files(i))
ActiveCell.Offset(1, 0).Activate
他们的更旧的部分解决复制,我完全没有注意到。
一切工作只是我需要调整我的“合并到占价值超过2分的情况下,现在它只会合并2.
号码2已解决,但号码1无效,似乎ThisWorkbook没有ActiceCell。 – TetraFlash
你的第一个答案让我想到我的答案,谢谢 – TetraFlash