Excel精英培训网

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

[已解决]vba

[复制链接]
发表于 2014-12-2 01:31 | 显示全部楼层 |阅读模式
10学分
[tr][/tr]
[tr][/tr]
[tr][/tr]
[tr][/tr]
[tr][/tr]
想把B列作为txt文件名自动生成,A列姓名根据判断B列自动追加到同名文件,也就是半天班的一个文件,8-4班的一个文件,以此类推,要求姓名竖着一行一个

Sub txt()
i = 1 '指定从第一行开始,如果数据从第二行开始,则修改为2即可,依此类推
OutDir = "C:\" '指定生成的txt文件所在的保存目录,可自行修改
If Dir(OutDir, vbDirectory) = "" Then
MsgBox "你所指定的输出目录不存在,请修正后重试!"
Exit Sub
End If
Do Until Cells(i, 2) = ""  '如果遇到该单元格为空,则自动终止
Open OutDir + "\" + Cells(i, 2) + ".txt" For Output As #11
If Cells(i + 1, 2) = Cells(i, 2) Then
If Cells(i, 2) = Cells(i - 1, 2) Then
Print #11, Cells(i, 1)
Else:
Print #11, Cells(i, 1)
Print #11, Cells(i + 1, 1)
End If
End If
Close (11)
i = i + 1
Loop
MsgBox "处理完毕"
End Sub

急用,试改了好几次都不成功,不是少人就是重名,要不就是空文件,请各位兄台各位老师各位大神多多指教!!不胜感激
(详见附件)
最佳答案
2014-12-2 02:17
即使B列没有排序,也可以完成

335478-VBA-数据写入文本文件排班表.rar (10.31 KB, 下载次数: 11)

排班表.rar

7.36 KB, 下载次数: 2

excel表

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2014-12-2 02:17 | 显示全部楼层    本楼为最佳答案   
即使B列没有排序,也可以完成

335478-VBA-数据写入文本文件排班表.rar (10.31 KB, 下载次数: 11)
回复

使用道具 举报

 楼主| 发表于 2014-12-2 07:34 | 显示全部楼层
那么的帅 发表于 2014-12-2 02:17
即使B列没有排序,也可以完成

不愧大师 受教了,多谢哥们儿!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-7 19:59 , Processed in 0.463927 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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