|
楼主 |
发表于 2015-9-25 14:48
|
显示全部楼层
grf1973 发表于 2015-9-25 10:00
加在一开始
大侠看下我这改的代码,但为什么备注和个人简介,尺码什么的数据还是取不到数据呐
代码可以正常运行是不假
Sub 导入文件()
Application.ScreenUpdating = False
Dim Filename, wb As Workbook, Sht As Worksheet
Filename = Dir(ThisWorkbook.Path & "\*.xls")
Dim brr(1 To 1000, 1 To 18) ''''''''''''''改到适当的列数
Do While Filename <> ""
If Filename <> ThisWorkbook.Name Then
fn = ThisWorkbook.Path & "\" & Filename
Set wb = Workbooks.Open(fn)
For Each Sht In wb.Worksheets
n = n + 1
brr(n, 2) = Sht.[b3] '姓名
brr(n, 5) = Sht.[I4] '手机号
brr(n, 14) = Sht.[F3] '籍贯
brr(n, 18) = Sht.[I7] '个人简介
If Len(Sht.[M3]) > 0 Then
brr(n, 5) = Sht.[M3] '最佳联系方式
brr(n, 7) = Sht.[d3] '生日
arr = Sht.Range("a19:i30")
For i = 2 To UBound(arr)
If Len(arr(i, 1)) = 0 Then
arr(i, 1) = arr(i - 1, 1)
jf = arr(i, 8) '积分
If jf > 0 Then
nf = Left(arr(i, 1), 4) '年
If nf = "2015" Then
brr(n, 8) = brr(n, 8) + jf '2015年积分
If nf = "2014" Then
brr(n, 9) = brr(n, 9) + jf '2014年积分
End If
End If '''''''''''''缺少
End If '''''''''''''缺少
End If '''''''''''''缺少
Next
End If '''''''''''''缺少
Next
wb.Close False
End If
Filename = Dir
Loop
Set Sht = Nothing
r = [b65536].End(3).Row + 1
If n > 0 Then Cells(r, 1).Resize(n, 12) = brr
Application.ScreenUpdating = True
End Sub
|
|