Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1136|回复: 9

[求助] 各位老师帮助修改宏,谢谢!

[复制链接]
发表于 2012-5-31 09:09 | 显示全部楼层 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2012-5-31 09:15 | 显示全部楼层
顺序有关系么??提取完了排一下序就行了!!
回复

使用道具 举报

发表于 2012-5-31 09:16 | 显示全部楼层
一共就3文件,不用DIR了,直接写文件名就行了。
回复

使用道具 举报

 楼主| 发表于 2012-5-31 09:17 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

 楼主| 发表于 2012-5-31 10:29 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

 楼主| 发表于 2012-5-31 11:18 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

发表于 2012-5-31 12:33 | 显示全部楼层
xhcyi 发表于 2012-5-31 10:29
顺序有关,有很百txt文件,只提取3个

就三个文件不如直接Copy,比写代码还快呢!!
回复

使用道具 举报

发表于 2012-5-31 13:54 | 显示全部楼层
  1. Sub wayy()
  2. Dim wj As String
  3. Range("A2:L65536").ClearContents
  4. s = 0: s1 = 1
  5. For Each wj In Array("重点.txt", "指定.txt", "普通.txt")
  6.     s = s + 1
  7.     s2 = 0
  8.     Open ThisWorkbook.Path & "" & wj For Input As #s
  9.     Do While Not (EOF(s))
  10.         Line Input #s, n
  11.         s2 = s2 + 1
  12.         If s2 > 1 Then
  13.             Y = Split(n, ",")
  14.             If UBound(Y) > 1 Then     '非空行
  15.               s1 = s1 + 1
  16.               For i = 0 To UBound(Y)
  17.                 Cells(s1, i + 1) = Y(i)
  18.                 Cells(s1, 21) = Right(wj, 12)
  19.               Next i
  20.            End If
  21.         End If
  22.     Loop
  23.     Close #s
  24. Next
  25. End Sub
复制代码
这样试一下。
回复

使用道具 举报

 楼主| 发表于 2012-5-31 18:48 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

发表于 2012-5-31 20:45 | 显示全部楼层
xhcyi 发表于 2012-5-31 18:48
for each控件变量必须为变体或对象
  1. Sub aaa()
  2. Dim arr
  3. arr = Array("重点.txt", "指定.txt", "普通.txt")
  4. For x = 0 To UBound(arr)
  5.    MsgBox arr(x)
  6. Next
  7. End Sub
复制代码
按这个模式添加到代码里吧。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-6-18 10:58 , Processed in 0.306932 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表